因为要使用这个application.prperties修改一些参数 能够在生产环境上去生效,
参考博客:https://blog.csdn.net/wo541075754/article/details/52540455 博主:二师兄-公众号-程序新视界
spring boot默认允许自定义的application.properties存在的位置主要是四个地方:
1.jar包同级目录的"config"目录下(适合在生产环境)
2.jar包同级目录下(适合在生产环境)
3.classpath根目录的 config目录下(适合在开发环境)
4.classpath的根目录下(适合在开发环境)
他们执行的优先级就是1->2->3 也就是先去找jar包同级目录下的config下的配置文件,再去同级目录下找.....以此类推
最开始犯了一个错,我再打包之前把application.prperties放在了外部 而jar包没有,虽然这样打包能够成功,但是配置信息是没有的,不应该这么去处理,应该将配置文件也打进去,只不过在jar包运行的同级目录下再防止一个外部的配置文件,根据加载顺序的优先级就可以了。
附图:
以这个daoguangguo为名的jar包为例的
我分别创建了三个properties在config目录和同级目录以及jar包中
config下的参数为:
第一次运行:
然后删除config目录
看同级目录下的application.properties
第二次运行:
然后把同级的application.properties删除了
再次运行:
这次就是直接指向的是jar包内部的application.properties了。
以上是为了说明一个顺序加载的优先级,特此记录,以免忘记。