Spring Boot启动jar包动态添加配置文件参数

Spring Boot项目动态启动设置参数的好处有以下几点:
  1. 灵活性:通过动态设置参数,可以根据不同的环境和需求来灵活地配置应用程序,适应不同的场景。

  2. 可维护性:动态设置参数可以避免硬编码,使得应用程序更易于维护和升级。

  3. 安全性:通过动态设置参数,可以避免敏感信息(如数据库密码、密钥等)被硬编码到代码中,提高应用程序的安全性。

  4. 可扩展性:通过动态设置参数,可以方便地扩展应用程序的功能,增加新的配置项,而不需要修改应用程序的代码。

  5. 自动化部署:通过动态设置参数,可以方便地实现自动化部署,使得部署过程更加简洁、高效。

    以下可以设置的参数大概有这些

    --server.port:指定服务端口号。
    --spring.profiles.active:指定激活的Spring配置文件。
    --logging.level.root:指定日志级别。
    --management.server.port:指定管理端口号。
    --spring.config.name:指定配置文件的名称。
    --spring.config.location:指定配置文件的路径。
    --spring.application.name:指定应用程序名称。
    --spring.datasource.url:指定数据源URL。
    --spring.datasource.username:指定数据源用户名。
    --spring.datasource.password:指定数据源密码。
    --spring.jpa.show-sql:指定是否显示SQL语句。
    --spring.jpa.hibernate.ddl-auto:指定Hibernate的DDL模式。
    --spring.main.banner-mode:指定启动Banner模式。
    --spring.main.web-application-type:指定应用程序类型。
    --spring.main.allow-bean-definition-overriding:指定是否允许Bean覆盖。
    --spring.main.lazy-initialization:指定是否启用懒加载。
    --spring.main.sources:指定应用程序的源。
    --spring.main.web-environment:指定Web环境类型。
    --spring.profiles.include:指定需要包含的Spring配置文件。
    --spring.profiles.exclude:指定需要排除的Spring配置文件。

使用示例:例如启动szxBlog.jar包
指定服务端口号为8080:
复制代码
   java -jar szxblog.jar --server.port=8080
指定激活的Spring配置文件为dev:
复制代码
   java -jar szxblog.jar --spring.profiles.active=dev
指定日志级别为DEBUG:
复制代码
   java -jar szxblog.jar --logging.level.root=DEBUG
指定管理端口号为8081:
复制代码
   java -jar szxblog.jar --management.server.port=8081
指定配置文件的名称为application:
复制代码
   java -jar szxblog.jar --spring.config.name=application
指定配置文件的路径为/etc/szxblog/:
复制代码
   java -jar szxblog.jar --spring.config.location=file:/etc/szxblog/
指定应用程序名称为szxblog:
复制代码
   java -jar szxblog.jar --spring.application.name=szxblog
指定数据源URL为jdbc:mysql://localhost:3306/szxblog:
复制代码
   java -jar szxblog.jar --spring.datasource.url=jdbc:mysql://localhost:3306/szxblog
指定数据源用户名为myuser:
复制代码
   java -jar szxblog.jar --spring.datasource.username=myuser
复制代码
###### 指定数据源密码为`mypassword`:

    java -jar szxblog.jar --spring.datasource.password=mypassword

注意:以上命令中的参数值需要根据实际情况进行修改。

相关推荐
Seraphina3641 分钟前
SQLI-labs(一)黑盒全流程
sql·安全·web安全
code_slave(码畜)3 小时前
微服务架构落地:基础服务 —— 报表服务(中篇:元数据、查询引擎、缓存与权限落地)
spring boot·spring cloud·缓存·微服务·架构
ZealSinger4 小时前
Boot4挂起函数丢traceId怎么修
spring boot·kotlin·协程·可观测性
code_slave(码畜)4 小时前
微服务架构落地:基础服务 —— 报表服务(AI 集成篇:AI 增强报表能力)
人工智能·spring boot·spring cloud·微服务·架构
code_slave(码畜)5 小时前
微服务架构落地:公共中间件层总览——不承载业务,只承载稳定性
spring boot·spring cloud·微服务·中间件·架构
做运维的阿瑞6 小时前
多表查询基础:INNER JOIN、LEFT JOIN、RIGHT JOIN
数据库·sql·mysql·算法
Seraphina366 小时前
DVWA(SQL注入-low,medium,XSS反射-low)
前端·数据库·笔记·sql·网络安全·web·xss
谢亮_vipxieliang6 小时前
Spring Boot 自动配置原理:从 @SpringBootApplication 到自定义 Starter
java·spring boot·后端
paopaokaka_luck10 小时前
非遗文物数字化小程序(AI非遗问答、ONNX图像识别、协同过滤推荐、ECharts数据分析、非遗知识浏览与互动、文创商城订单闭环、文化活动报名签到、社区交流)
javascript·spring boot·mysql·数据分析·echarts·mybatis
EatFan12 小时前
Spring Boot 4 迁移避坑清单:Jackson 3、starter 拆分与最低 JDK 口径核对(含若依/芋道/CRMEB 升级对照)
java·数据库·spring boot·spring boot 4·java 21·jakarta ee 11·jackson 3