Spring Boot 使用properties如何多环境配置
2018-01-27 21:05
148 查看
当我们使用properties文件作为Spring Boot的配置文件而不是yaml文件时,怎样实现多环境使用不同的配置信息呢?
在Spring Boot中,多环境配置的文件名需要满足application-{profile}.properties的格式,其中{profile}对应你的环境标识,如下所示:
application-dev.properties:开发环境;
application-test.properties:测试环境;
application-prod.properties:生产环境;
等
至于哪个具体的配置文件会被加载,需要在application.properties文件中通过spring.profiles.active属性来设置,而该属性可以写在配置文件中,也可以通过启动时命令来设置。
如application.properties中的spring.profiles.active=test,那么就会加载application-test.properties中的配置的属性。
假设有针对不同环境的三个配置文件:application-dev.properties,application-test.properties,application-prod.properties。
这三个文件中设置不同的server.port属性,dev环境为1111,test环境为2222,prod为3333。
application.properties中设置spring.profiles.active=dev,意为默认以dev环境的配置文件为准。
当我们执行java -jar XXX.jar时,可以测试到服务器端口为1111,也就是dev配置文件中设置的。
当我们执行java -jar XXX.jar --spring.profiles.active=test,可以测试到端口被设置为2222,也就是test配置文件中设置的。
同理,当我们执行jar -jar XXX.jar --spring.profiles.active=prod,可以观察到服务端口被设置为3333,也就是生产环境的配置。
总结多环境的配置思路:
在application.properties中配置通用内容,使用spring.profiles.active=dev,指定默认的配置。
在application-{profile}.properties中配置各个环境不同的内容。
通过命令行方式去激活不同的环境配置。
内容来源:《Spring Cloud微服务实战》
在Spring Boot中,多环境配置的文件名需要满足application-{profile}.properties的格式,其中{profile}对应你的环境标识,如下所示:
application-dev.properties:开发环境;
application-test.properties:测试环境;
application-prod.properties:生产环境;
等
至于哪个具体的配置文件会被加载,需要在application.properties文件中通过spring.profiles.active属性来设置,而该属性可以写在配置文件中,也可以通过启动时命令来设置。
如application.properties中的spring.profiles.active=test,那么就会加载application-test.properties中的配置的属性。
假设有针对不同环境的三个配置文件:application-dev.properties,application-test.properties,application-prod.properties。
这三个文件中设置不同的server.port属性,dev环境为1111,test环境为2222,prod为3333。
application.properties中设置spring.profiles.active=dev,意为默认以dev环境的配置文件为准。
当我们执行java -jar XXX.jar时,可以测试到服务器端口为1111,也就是dev配置文件中设置的。
当我们执行java -jar XXX.jar --spring.profiles.active=test,可以测试到端口被设置为2222,也就是test配置文件中设置的。
同理,当我们执行jar -jar XXX.jar --spring.profiles.active=prod,可以观察到服务端口被设置为3333,也就是生产环境的配置。
总结多环境的配置思路:
在application.properties中配置通用内容,使用spring.profiles.active=dev,指定默认的配置。
在application-{profile}.properties中配置各个环境不同的内容。
通过命令行方式去激活不同的环境配置。
内容来源:《Spring Cloud微服务实战》
相关文章推荐
- [转]如何使用EditPlus配置程序开发环境(NASM)
- 如何配置和使用log4net日志(VS2008+SQL2008环境下)
- 如何使用 Docker 快速配置数据科学开发环境?
- spring boot 不同的环境使用不同的配置
- 微信小程序配置websocket环境及如何在小程序上使用做个简单的解释吧
- 在64位Ubuntu14.04LTS上编译和链接32位汇编程序(使用c标准库)需要如何配置配置环境
- [转]如何使用EditPlus配置程序开发环境(NASM)
- 如何在pycharm中使用配置好的virtualenv环境
- spring boot使用profile来区分正式环境配置文件与测试环境配置文件
- Spring Boot系列 - 5. 不同的环境使用不同的配置
- 如何在pycharm中使用配置好的virtualenv环境
- 在JSP环境中如何配置和使用fckeditor
- 如何使用 docker 配置 PHP LEMP 开发环境
- Android Studio如何下载NDK及使用新的Gradle构建工具配置NDK环境
- 如何配置和使用log4net日志(VS2008+SQL2008环境下)
- [使用 Weex 和 Vue 开发原生应用] 1 如何配置开发环境
- 如何用JMF编写MP3音乐播放器1——(图文)如何使用JMF及其环境变量的配置
- spring boot使用logback实现多环境日志配置
- 关于如何使用properties读取配置文件内容问题
- MacBook下如何配置xampp中使用mysql的环境变量