持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第11天,点击查看活动详情
springboot项目配置文件指定方式
前文
由于同一项目正常来说需要应用到开发、测试等多个环境中,而不同环境中环境一般有所不同。因此正常情况下需要在不同环境下指定不同的配置文件,本文主要将对于几种常用的指定配置文件启动方式进行总结。
通过application配置文件中字段进行指定
spring:
profiles:
active: dev
如上所示,主要通过yaml文件或properties中的属性字段进行版本指定,直接在属性中设定要需要采用的环境,直接也就会对于响应的配置文件进行获取及使用
通过java启动jar包命令增加属性进行指定
java -Dspring.profiles.active=dev -jar application.jar
这种方式与第一种直接在配置文件中的指定其实是异曲同工,只不过将原本位于配置文件中的信息,调整到启动jar包的命令行中进行处理。通过对于启动参数的调整,也就达到指定不同配置文件的目的。
通过java启动命令行进行直接处理
java -jar application.jar --spring.profiles.active=dev
这是通过命令行启动指定配置的另一种方式。与第二种方式的区别主要在于第二种相当于通过java属性的方式设定,而该方式为直接进行配置文件加载的方案。但实际上二者的作用是没有什么区别的。
通过pom文件中的属性参数进行处理
<profiles>
<profile>
<id>dev</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<environment>dev</environment>
</properties>
</profile>
</profiles>
spring:
profiles:
active: @environment@
如上面所示,为第三种启动的方式。也就是预先在pom文件中进行所有的配置文件的配置,并将配置文件中环境的指定映射为pom文件中所存储的变量。而在项目的打包阶段,则需要进行profile参数的指定:
mvn package -P dev
按照这种方式,打包的内部所包含的也就是我们的目标配置文件。当该jar包被启动时,自然也就会自行采用目标配置文件进行数据的读取,达到配置文件区分的效果。
后记
- 千古兴亡多少事?悠悠。不尽长江滚滚流。