SpringBoot配置参数修改方式
方式一: 配置文件 application.properties
server.port=7777
方式二: java启动命令
-
# 以应用参数的方式
-
java -jar <path/to/my/jar> --server.port=
7777
-
# 或以 JDK 参数的方式
-
java -Dserver.port=7777 -jar <path/to/my/jar>
方式三: 环境变量 SERVER_PORT
-
Linux: SERVER_PORT=7777 java -jar <path/to/my/jar>
-
Windows:SET SERVER_PORT=7777 java -jar <path/to/my/jar>
方式四: 环境变量 SPRING_APPLICATION_JSON
-
Linux:SPRING_APPLICATION_JSON='{"server.port":7788}' java -jar <path/to/my/jar> # 或 java -Dspring.application.json='{"server.port":7788}' -jar <path/to/my/jar> # 或java -jar <path/to/my/jar> --spring.application.json='{"server.port":7788}'
参数优先级
启动命令应用参数 > 启动命令 JDK 参数 > 环境变量
如果我们同时给定这些参数, 如下:
SERVER_PORT=3344 java -Dserver.port=5566 -jar <path/to/my/jar> --server.port=7777
生效的是 --server.port=7777
这个参数.
其中
SpringBoot中有以下两种配置文件bootstrap (.yml 或者 .properties),application (.yml 或者 .properties)
1.加载顺序上的区别
bootstrap.yml(bootstrap.properties)先加载
application.yml(application.properties)后加载
bootstrap.yml 用于应用程序上下文的引导阶段,由父Spring ApplicationContext加载。父ApplicationContext 被加载到使用application.yml的之前。
在 Spring Boot 中有两种上下文,一种是 bootstrap, 另外一种是 application, bootstrap 是应用程序的父上下文,也就是说 bootstrap 加载优先于 applicaton。bootstrap 主要用于从额外的资源来加载配置信息,还可以在本地外部配置文件中解密属性。这两个上下文共用一个环境,它是任何Spring应用程序的外部属性的来源。bootstrap 里面的属性会优先加载,它们默认也不能被本地相同配置覆盖。
2.bootstrap/ application 的应用场。
bootstrap.yml 和application.yml 都可以用来配置参数。
bootstrap.yml 可以理解成系统级别的一些参数配置,这些参数一般是不会变动的。
application 配置文件这个容易理解,pplication.yml 可以用来定义应用级别的,主要用于 Spring Boot 项目的自动化配置。
bootstrap 配置文件有以下几个应用场景。
使用 Spring Cloud Config 配置中心时,这时需要在 bootstrap 配置文件中添加连接到配置中心的配置属性来加载外部配置中心的配置信息;
一些固定的不能被覆盖的属性
一些加密/解密的场景;
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)