springboot不同环境使用不同配置文件打包方式
作者:cap_jack_sp
这篇文章主要介绍了springboot不同环境使用不同配置文件打包方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
在POM文件中新增以下配置
<profiles>
<profile>
<id>dev</id>
<properties>
<package.environment>dev</package.environment>
</properties>
<!-- 是否默认 true表示默认-->
<activation>
<activeByDefault>true</activeByDefault>
</activation>
</profile>
<profile>
<id>stage</id>
<properties>
<package.environment>stage</package.environment>
</properties>
</profile>
</profiles>在application.yml中新增以下参数
spring:
profiles:
active: @package.environment@同时新增配置文件application-{package.environment}.yml
按照POM文件中,我的新增配置文件分别为application-dev.yml application.stage.yml
如下图所示

在application-dev.yml中配置文件内容为
something: hcfdevv
在application-stage.yml中配置文件内容为
something: hcfstage
测试使用该配置
@RestController
@SpringBootApplication
public class HelloController extends SpringBootServletInitializer {
@Value("${something}")
String something;
@RequestMapping("hello")
String hello() {
return something;
}
public static void main(String[] args) {
SpringApplication.run(HelloController.class, args);
}
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
return application.sources(HelloController.class);
}
}打包测试
运行打包代码
mvn package -P dev
得到war包

将war包放入tomcat的webapps下,启动Tomcat

显示application-dev.yml中配置的参数内容
运行打包代码
mvn package -P stage
得到war包

将war包放入tomcat的webapps下,启动Tomcat

显示application-stage.yml中配置的参数内容。
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
