SpringBoot启动时设置参数,覆盖yml中的参数或yml中读取设置的参数

SpringBoot启动的时候可以设置参数,设置的参数可以覆盖SpringBoot中resource下面的配置文件中的参数,也可以在yml中直接读取设置的参数值,例如下面的启动命令:
java -jar -DNACOS_HOST=192.168.20.171 -Dspring.profiles.active=prod app.jar
resource下面的yml文件如下:

spring: cloud: nacos: discovery: server-addr: ${NACOS_HOST:localhoslt}:8848 profiles: active: dev

使用—Dxx这个参数,就可以在yml中间中获取这个xx参数值,使用

${xx}

即可读取值,如果设置的xx的参数名称和yml中的重名,那就会实现覆盖的效果。
如上面的spring.profiles.active这个参数,应用中配置的时dev,但是运行的时候配置的prod,那么最终项目运行的代码其实就是prod这个参数。

ps:
${NACOS_HOST:localhoslt} 这个参数写法意思是如果设置了NACOS_HOST这个参数,那么获取NACOS_HOST这个参数,如果没有设置,那么就用localhost这个参数


__EOF__

本文作者程序洋
本文链接https://www.cnblogs.com/DayangJava/p/16424620.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!
posted @   coding_疯魔  阅读(3164)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示