Spring boot 的profile功能如何实现多环境配置自动切换 (2)

java命令行指定:
java -jar app.jar --spring.profiles.active=dev
tomcat 中 catalina.bat(.sh中不用“set”) 添加JAVA_OPS。通过设置active选择不同配置文件:
set JAVA_OPTS="-Dspring.profiles.active=test"
eclipse 中启动tomcat。项目右键 run as –> run configuration–>Arguments–> VM arguments中添加。
-Dspring.profiles.active="dev"
在微服务的时代,会不会觉得有点麻烦呢?

web.xml方式

标注方式(junit单元测试非常实用)
@ActiveProfiles({"dev"})

ENV方式(建议使用此方式)

设置系统环境变量:SPRING_PROFILES_ACTIVE(注意:是大写)
比如mac开发环境中设置环境变量的方法:
vi ~/.bash_profile
在~/.bash_profile中增加如下内容:
export SPRING_PROFILES_ACTIVE=dev

注意: mac eclipse中是获取不到环境变量的解决办法,参考这文章进行处理,

总结

上面关于profile的东西,基本能满足工作的需要了。使用profile后,可以减化因不同环境配置差异,而带来的配置管理以及打包工作。

尽量使用环境变量来激活profile,如果是可执行的包,也可以使用java命令行指定,其它方式不建议使用。

使用profile后,使得应用能更容易接入配置中心,以及使用docker容器技术,所以非常有意义。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zyydsj.html