日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
說一個大家都知道的SpringBoot小技巧

小伙伴們都知道,在 Spring Boot 中,配置文件是 application.properties 或者 application.yaml,這個名為 application 的配置文件,無論是 properties 格式還是 yaml 格式,都會被 Spring Boot 容器自動加載。

然而很多時候我們會有一些額外的配置,這些額外的配置可能并非系統(tǒng)配置,所以我們不想將之放在 application.properties 或者 application.yaml 中,想搞一個單獨的配置文件來處理,這時候就分情況了。

1. properties

對于 properties 格式的配置文件,我們可以隨心所欲的自定義配置文件,例如在 resources 目錄下新建一個 data.properties 的配置文件用來配置數(shù)據(jù)庫的信息,像下面這樣:

db.username=root
db.password=123
db.url=jdbc:mysql:///vhr

然后在 Java 代碼中,利用 @PropertySource 和 @ConfigurationProperties 兩個注解來加載配置文件:

@PropertySource("classpath:data.properties")
@ConfigurationProperties(prefix = "db")
public class DbProperties {
private String username;
private String password;
private String url;
//省略 getter/setter
}

@PropertySource 就是用來加載一個自定義的 properties 配置文件,這是 Spring 中就有的功能,而不是 Spring Boot 的功能。

所以,如果你使用了 properties 格式的配置文件,那么就可以非常方便的實現(xiàn)自定義配置文件了,甚至可以將不同的配置文件分門別類,管理的井井有條。

問題實際上是出在 yaml 這一塊。

2. YAML

小伙伴們知道,對于 YAML 格式的配置而言,它其實是沒有一個類似于 @PropertySource 注解的東西的,也就是說 YAML 配置,你只能寫在 application.yaml 中,不能寫在其他地方。要是寫在其他地方,就沒法加載了,其實也不是沒法加載,可以自己調(diào)用 snakeyaml 包中的類去加載,但是那樣太費(fèi)事了,所以我們期望能夠有一個簡便的辦法來做這件事。

怎么做呢?

我們可以利用 Spring Boot 中對于 profile 多環(huán)境的處理方式來加載自定義的 YAML 配置。

大家知道,Spring Boot 中對于多環(huán)境的處理方式非常方便,以 yaml 配置為例,我們只需要定義一個名為 application-{profile}.yaml 的配置文件,然后在 application.yaml 中就可以指定這個環(huán)境了,利用這個漏洞,就可以非常方便的加載自定義的 yaml 配置了,不過這種方式對自定義的 yaml 配置文件名格式有要求,就是必須是 application-{profile}.yaml 格式的。

我舉一個簡單例子吧,例如對于數(shù)據(jù)庫的配置,我想單獨搞一個配置文件,那么我們可以新建一個 application-data.yaml 的配置文件,內(nèi)容如下:

spring:
datasource:
password: 123
username: root
url: jdbc:mysql:///vhr

然后在 application.yaml 中就像設(shè)置環(huán)境一樣引入這個配置文件,如下:

spring:
profiles:
active: data

這樣就實現(xiàn)了對自定義 yaml 配置文件的加載。

如果有多個自定義的 yaml 配置,那么也可以一起加載,多個環(huán)境之間用 , 隔開即可。

just this。

小伙伴們都知道吧嘿嘿。


分享名稱:說一個大家都知道的SpringBoot小技巧
標(biāo)題鏈接:http://www.5511xx.com/article/dpgpphs.html