配置文件的4个级别分别是:
- 类路径下配置文件(一直使用的是这个,也就是resources目录中的application.yml文件)
- 类路径下config目录下配置文件
- 程序包所在目录中配置文件
- 程序包所在目录中config目录下配置文件
那为什么设计这种多种呢?说一个最典型的应用吧。
- file :config/application.yml (这个config处于程序打包完后的同级文件夹) 【最高】
- file :application.yml (这个配置文件同上)
- classpath:config/application.yml (config文件夹处于未打包时Resources下的目录)
- classpath:application.yml (正常SpringBoot创建的配置文件) 【最低】
- 场景A:咱们作为一个开发者,咱们做程序的时候为了方便自己写代码,配置的数据库肯定是连接你自己本机的,咱们使用4这个级别,也就是之前一直用的application.yml。
- 场景B:现在项目开发到了一个阶段,要联调测试了,连接的数据库是测试服务器的数据库,肯定要换一组配置吧。你可以选择把你之前的文件中的内容都改了,目前还不麻烦。
- 场景C:测试完了,一切OK。你继续写你的代码,你发现你原来写的配置文件被改成测试服务器的内容了,你要再改回来。现在明白了不?场景B中把你的内容都改掉了,你现在要重新改回来,以后呢?改来改去吗?
级别1和2什么时候使用呢?程序打包以后就要用这个级别了,管你程序里面配置写的是什么?我的级别高,可以轻松覆盖你,就不用考虑这些配置冲突的问题了。
总结
- 配置文件分为4种运用场景
- 项目类路径配置文件:服务于开发人员本机开发与测试
- 【SpringBoot学习笔记|SpringBoot配置文件优先级】项目类路径config目录中配置文件:服务于万恶的项目经理整体调控
- 工程路径配置文件:服务于运维人员配置涉密线上环境
- 工程路径config目录中配置文件:服务于运维经理整体调控
- 项目类路径配置文件:服务于开发人员本机开发与测试
- 多层级配置文件间的属性采用叠加并覆盖的形式作用于程序
- 程序员只负责开发
推荐阅读
- js|jquery 分页兼容i7,i8浏览器
- java|cocos2dx环境搭建
- 运维管理|Docker服务编排
- spring|SpringBoot自动配置原理入门
- Spring实战|解决Spring boot : java.lang.ExceptionInInitializerError报错
- 面试|springboot自动装配原理最终版
- Go|猿创征文|我的Go成长之路道阻且长
- 五|猿创征文 | web前端——她
- spring|猿创征文 |【SpringBoot2】快速上手SpringBoot