springboot @ConfigurationProperties和@PropertySource的區(qū)別
springboot @ConfigurationProperties和@PropertySource區(qū)別
@ConfigurationProperties
:尋找的是全局配置文件
@PropertySource
:尋找的是指定的配置文件
理解里面有一個(gè)參數(shù) value,可以指定很多個(gè)配置文件,所以是使用一個(gè)數(shù)組{}
springboot推薦使用這種方式給容添加組件:
創(chuàng)建一個(gè)config包,然后在包下創(chuàng)建一個(gè)class
使用@bean給容器中添加組件
springboot 使用@ConfigurationProperties和@PropertySource的問題
在使用Springboot時(shí)我們經(jīng)常把一些key-value的屬性值配置在
.properties配置文件中,我們想通過@Value搭配Spring EL來讀取配置文件中的值來給我們的變量賦值。
在spring1.5一下提供了一個(gè)類注解:
@ConfigurationProperties:
常用的兩個(gè)屬性是:
locations
:指定配置文件
prefix
:指定該配置文件中的某個(gè)屬性群的前綴
但是使用spring1.5時(shí),源碼部分做了修改,去掉了locations屬性,所以另一個(gè)注解就上場啦
@PropertySource:
value
:這里指定配置文件,替代原來@ConfigurationProperties的locations
encoding
:指定讀取配置文件時(shí)的編碼
這個(gè)encoding很重要,如果不指定使用默認(rèn)的話很可能出現(xiàn)讀取亂碼的情況,我寫demo就遇到了,百度了很多解決方案都是從ide工具本身入手,根本不能解決問題,最后還是我自己看注解的源碼才發(fā)現(xiàn)有這個(gè)屬性的。
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Java利用future及時(shí)獲取多線程運(yùn)行結(jié)果
在Java編程中,有時(shí)候會(huì)需要及時(shí)獲取線程的運(yùn)行結(jié)果,本文就通過一個(gè)相關(guān)實(shí)例向大家介紹Java利用future及時(shí)獲取線程運(yùn)行結(jié)果的方法,需要的朋友可以參考。2017-10-10Mybatis查詢返回兩個(gè)或多個(gè)參數(shù)問題
這篇文章主要介紹了Mybatis查詢返回兩個(gè)或多個(gè)參數(shù)問題,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-06-06java Springboot實(shí)現(xiàn)多文件上傳功能
這篇文章主要為大家詳細(xì)介紹了java Springboot實(shí)現(xiàn)多文件上傳功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-08-08Springboot Autowried及Resouce使用對比解析
這篇文章主要介紹了Springboot Autowried及Resouce使用對比解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-06-06java使用hadoop實(shí)現(xiàn)關(guān)聯(lián)商品統(tǒng)計(jì)
本篇文章java使用hadoop實(shí)現(xiàn)關(guān)聯(lián)商品統(tǒng)計(jì),可以實(shí)現(xiàn)商品的關(guān)聯(lián)統(tǒng)計(jì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。2016-10-10SpringBoot里使用Servlet進(jìn)行請求的實(shí)現(xiàn)示例
這篇文章主要介紹了SpringBoot里使用Servlet進(jìn)行請求的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-01-01Java中使用同步回調(diào)和異步回調(diào)的示例詳解
這篇文章主要介紹了Java中使用同步回調(diào)和異步回調(diào)的相關(guān)資料,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-04-04java基于數(shù)據(jù)庫實(shí)現(xiàn)全局唯一ID的示例
本文主要介紹了java基于數(shù)據(jù)庫實(shí)現(xiàn)全局唯一ID的示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-04-04