spring.profiles.active=@profiles.active@ ,其实是配合 maven profile进行选择不同配置文件进行启动。

当执行

mvn clean package -P test 命令时, @profiles.active@ 会替换成 test

打开 jar包,即可看到:

 

实战

1.构建一个springboot 项目

这里使用idea进行构建的,这个过程省略

2.pom文件配置

<profiles>
<profile>
<!-- 生产环境 -->
<id>prod</id>
<properties>
<profiles.active>prod</profiles.active>
</properties>
</profile>
<profile>
<!-- 本地开发环境 -->
<id>dev</id>
<properties>
<profiles.active>dev</profiles.active>
</properties>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
</profile>
<profile>
<!-- 测试环境 -->
<id>test</id>
<properties>
<profiles.active>test</profiles.active>
</properties>
</profile>
</profiles>
  • 这里默认dev配置

3.配置多个配置文件

application.properties

注意这里的profiles.active 要和pom文件的对应上

spring.profiles.active=@profiles.active@

application-dev.properties

name = "dev"

application-prod.properties

name = "prod"

application-test.properties

name = "test"

4.编写个测试的controller


/**
* @author kevin
* @date 2019/6/28 16:12
*/
@RestController
public class HelloController { @Value("${name}")
private String name; @RequestMapping(value = {"/hello"},method = RequestMethod.GET)
public String say(){
return name;
}
}

5.启动测试

使用idea工具启动开发

默认是dev,假如想要使用prod配置文件,如上图选择prod,注意下面的导入,重启项目

D:\dev_code\profiles-demo\target>curl http://localhost:8080/hello
"prod"

6 打包

这里使用idea打包不再介绍,如果你使用命令

mvn clean package -P dev

则是使用dev配置

参考文章:http://www.likecs.com/show-62694.html

最新文章

  1. PPT图片双屏抽奖系统现场主要操作流程介绍
  2. SAMSUNG某型号一千短信成功记录!对比其他软件恢复不成功的案列!
  3. python模块结构和布局
  4. hdu 4267 树形DP
  5. iOS tableview 静态表布局纪录
  6. Android定时器实现方法[转]
  7. (二)Angularjs - 入门(2)
  8. c++,extern “c”
  9. 为mysql 表重新设置自增的主键id
  10. 【Linux篇】--awk的使用
  11. #2 numpy pandas初步学习记录
  12. linux面试题-基础题1
  13. cryptopunks测试代码cryptopunksmarket-setinitial.js
  14. Visual Studio平台安装及测试
  15. HttpWebRequest 禁用系统默认代理
  16. hadoop 文件合并
  17. ubuntu下 openvpn客户端的配置
  18. 转载:Erlang 函数(Efficiency Guide)
  19. 基于OMAPL:Linux3.3内核的编译
  20. Jmeter编码问题

热门文章

  1. 开发技术--浅谈python基础知识
  2. Qt for Android修改应用程序的图标和名称
  3. MySQL Backup--使用mysqldump依次备份所有数据库
  4. c# MVC5(二) MVC与IOC结合
  5. MySQL数据备份概述
  6. LCD编程_LCD控制器
  7. Python3 if 变量variable SQL where 语句拼接
  8. Windbg Processes and Threads(进程和线程)窗口的使用
  9. 异常CLRDBG_NOTIFICATION_EXCEPTION_CODE( 0x04242420)
  10. pycharm的Structure中的图标含义