亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

007SpringBoot之配置文件加載的優先級以及位置

標簽:
SpringBoot

一、基础

1、定义

之前我们的application.yml/properties文件都放到了classpath:下,然后SpringBoot项目启动后会自动读取并加载,那么这个文件放在哪呢?只能放到classpath:下吗?不是。

2、位置以及优先级

SpringBoot启动后会扫描以下位置的application.yml/properties文件作为SpringBoot的默认配置。

  • 1、file:./config/

  • 2、file:./

  • 3、classpath:/config/

  • 4、classpath:/

优先级由高到低,高优先级的配置会覆盖低优先级的配置;

二、高级

1、互补配置

1.1、定义

我们上面介绍了配置文件是有优先级的,比如:我们在最高优先级(file:./config/)上配置了端口号,我们又在最低优先级(classpath:/)上配置了访问的域名,则SpringBoot启动的时候会加载全部配置文件不重复的配置项。也就是说会把端口和访问域名都加载进来,低优先级的配置并不会失效。

1.2、例子

1.2.1、高优先级的配置(yml)
server:  port: 8081
1.2.2、低优先级的配置(properties)
server.port=8080# 自定义访问域名server.address=www.chentongwei.com
1.2.3、启动后的效果

端口:8081

域名:www.chentongwei.com

2、自定义配置文件加载位置

1、定义

若我们不想用以上的目录,该怎么自定义位置呢?可以用spring.config.location=来指定。项目打包好以后,我们可以使用命令行参数的形式,启动项目的时候来指定配置文件的新位置;指定配置文件和默认加载的这些配置文件共同起作用形成互补配置。但是你指定后,启动SpringBoot并不会生效,是因为启动方式应该是

java -jar xxx.jar --spring.config.location=E:/application.properties

这样我们启动的时候就会加载E盘的application.properties

2、例子

java -jar xxx.jar --spring.config.location=E:/application.properties

3、用途

我觉得非常好用,这样运维人员部署的时候,直接用一个命令启动起来后,如果发现配置的bug了,直接更改配置文件然后重启jar即可,无需重新打包在部署上线。



作者:编程界的小学生
链接:https://www.jianshu.com/p/d2d5b25188a8

點擊查看更多內容
TA 點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
  • 推薦
  • 評論
  • 收藏
  • 共同學習,寫下你的評論
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消