开发应用时,通常同一套程序会被应用和安装到几个不同的环境中,如开发、测试、生产等。每个环境的数据库地址、服务器端口配置都不同。对于这种情况,SpringBoot可以配置多分不同环境的配置文件,再通过打包命令加载需要的配置文件
在Spring Boot中,多环境的配置文件名需要满足application-{profile}.properties的格式,其中{profile}对应你的环境标识,如下:
- application-dev.properties:开发环境
- application-test.properties:测试环境
- application-prod.properties:生产环境
具体哪个配置文件会被加载,需要在application.properties文件中通过spring.profiles.active属性来设置,它对应配置文件中{profile}值。例如spring.profiles.active=test就会加载application-test.properties配置文件内容。
或者执行java -jar xxx.jar --spring.profile.active=test,也可以指定配置文件
总结:可以按如下思路进行多环境配置:
- 在application.properties中配置通用内容,并设置spring.profiles.active=dev,以开发环境为默认配置
- 在applicaiton-{profile}.properties中配置各个环境不同的内容
- 通过命令行的方式去激活不同的配置