具体做法:

不同环境的配置设置一个配置文件,例如:dev环境下的配置配置在application-dev.properties中;prod环境下的配置配置在application-prod.properties中。
在application.properties中指定使用哪一个文件

1、application-dev.properties(dev环境下的配置),如下
profile = dev_envrimont
log.level = debug

2、application-prod.properties(prod环境下的配置),如下
profile = prod_envrimont
log.level = warn
3、application.properties
spring.profiles.active=dev
4、Controller
@Autowired
private Environment env;

@RequestMapping("/testProfile")
public String testProfile(){
return env.getProperty("profile");
}

5、logback.xml配置文件

测试:

上述代码执行后的结果是:dev_envrimont
如果application.properties的配置改为:spring.profiles.active=prod,则结果是:prod_envrimont
如果application.properties的配置改为:spring.profiles.active=prod,而application.properties中也配置了profile=xxx(不管该配置配置在spring.profiles.active=prod的上方还是下方),这个时候结果是:prod_envrimont
,但是application-prod.properties删掉了profile = prod_envrimont,这个时候结果是:xxx
结论:

各个环境公共的配置写在application.properties中
各个模块独有的配置配置在自己的application-{xxx}.properties文件中
程序读取的时候优先读取application.properties中选中的profile的配置,若读不到才会从application.properties去读
若profile什么都不配置,从默认application-default.properties文件中获取

最新文章

  1. <十一>JDBC_事务的处理+隔离
  2. PHP curl 模拟POST 上传文件(含php 5.5后CURLFile)
  3. 浅谈mysql的两阶段提交协议
  4. Jquery学习笔记:利用jquery获取select下拉框的值
  5. win10全系列官方MSDN原版系统安装密钥、版本区别、镜像下载地址与激活教程
  6. iOS 代码实现获得应用的版本号(Version/Build)
  7. Swift 3.0在集合类数据结构上的一些新变化
  8. sql server 高可用故障转移(上)
  9. Numpy 数组属性
  10. c#反射(2)
  11. 浅析vue实例的生命周期(生命周期钩子)
  12. 【工具测试】Acunetix 11-登录后扫描的功能
  13. 打开文件或者uri的方式--------进程启动文件和启动者启动文件
  14. linux查看某个目录下有哪些文件的命令
  15. CentOS 6.5下Squid代理服务器的安装与配置
  16. 20169211 《Linux内核原理与分析》第十一周作业
  17. ELK系统搭建流程
  18. APUE学习笔记——10.18 system函数 与waitpid
  19. 冒泡排序的JavaScript实现
  20. poj 1703 Find them, Catch them 【并查集 新写法的思路】

热门文章

  1. 捕获网络数据包并进行分析的开源库-WinPcap
  2. 启动spring boot 异常
  3. [译]GLUT教程(目录)
  4. jeecms搜索结果排序-二次开发
  5. ffmpeg截图
  6. ckediter一些小的问题解决办法
  7. CocoaPods报错:The dependency `` is not used in any concrete target
  8. MySQL视图概述
  9. 【Github】之突然访问不了Github地址
  10. chef简介