SpringBoot?讀取yml文件的多種方式匯總
Spring Boot讀取yml文件的主要方式有以下幾種:
1.@Value注解
? 我們可以在bean的屬性上使用@Value注解,直接讀取yml中的值,如:
application.yml:
name: Zhangsan
Bean:
public class MyBean {
@Value("${name}")
private String name;
} 2.Environment對(duì)象
我們可以通過(guò)注入Environment對(duì)象來(lái)讀取yml值,如:
@Autowired
private Environment environment;
public void doSomething() {
String name = environment.getProperty("name");
}3.@ConfigurationProperties注解
我們可以使用@ConfigurationProperties注解將yml中的值映射到bean的屬性上,如:
application.yml:
my:
name: Zhangsan
age: 18Bean:
@Component
@ConfigurationProperties(prefix = "my")
public class MyProps {
private String name;
private int age;
// getter and setter
}4.YmlPropertySourceFactory
我們可以使用YmlPropertySourceFactory來(lái)加載yml文件,然后像普通Properties一樣讀取值,如:
@Bean
public static PropertySourcesPlaceholderConfigurer properties() {
YamlPropertiesFactoryBean factory = new YamlPropertiesFactoryBean();
factory.setResources(new ClassPathResource("application.yml"));
factory.getObject().forEach((k, v) -> System.out.println(k + ": " + v));
return factory;
} 5.@YamlComponent注解
如果yml文件中用—分隔了多個(gè)文檔,我們可以使用@YamlComponent注解將每份文檔映射到一個(gè)bean上,如:
application.yml:
my: name: Zhangsan --- my: name: Lisi
Beans:
@Component("first")
@YamlComponent(value = "my.first")
public class FirstProps {
private String name;
}
@Component("second")
@YamlComponent(value = "my.second")
public class SecondProps {
private String name;
}這就是Spring Boot讀取yml文件的主要5種方式,可以根據(jù)需要選擇使用。yml作為Spring Boot默認(rèn)的配置文件格式,理解如何操縱yml文件將有助于我們實(shí)現(xiàn)系統(tǒng)配置的靈活性。
到此這篇關(guān)于SpringBoot 讀取yml文件的幾種方式的文章就介紹到這了,更多相關(guān)SpringBoot 讀取yml文件內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java web項(xiàng)目中的強(qiáng)制登錄功能實(shí)現(xiàn)代碼
本文給大家分享Java web項(xiàng)目中的強(qiáng)制登錄功能實(shí)現(xiàn)代碼,為了避免直接進(jìn)入項(xiàng)目中存在的頁(yè)面,使用filter過(guò)濾器,代碼簡(jiǎn)單易懂,對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2021-11-11
詳解Idea 2019.2 安裝lombok插件失效問(wèn)題解決
這篇文章主要介紹了詳解Idea 2019.2 安裝lombok插件失效問(wèn)題解決,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-10-10
springMVC獲取請(qǐng)求參數(shù)的幾種方式匯總
在日常使用SpringMVC進(jìn)行開發(fā)的時(shí)候,有可能遇到前端各種類型的請(qǐng)求參數(shù),這里做一次相對(duì)全面的總結(jié),下面這篇文章主要給大家介紹了關(guān)于springMVC獲取請(qǐng)求參數(shù)的幾種方式,需要的朋友可以參考下2022-04-04
SpringMVC實(shí)現(xiàn)自定義類型轉(zhuǎn)換器
本篇文章主要介紹了SpringMVC實(shí)現(xiàn)自定義類型轉(zhuǎn)換器 ,詳細(xì)的介紹了自定義類型轉(zhuǎn)換器的用法和好處,有興趣的可以了解一下。2017-04-04
SpringBoot整合MybatisPlus實(shí)現(xiàn)增刪改查功能
MybatisPlus是國(guó)產(chǎn)的第三方插件,?它封裝了許多常用的CURDapi,免去了我們寫mapper.xml的重復(fù)勞動(dòng)。本文將整合MybatisPlus實(shí)現(xiàn)增刪改查功能,感興趣的可以了解一下2022-05-05
SpringBoot+Response如何統(tǒng)一返回result結(jié)果集
這篇文章主要介紹了SpringBoot+Response如何統(tǒng)一返回result結(jié)果集,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-05-05
Struts2之Validator驗(yàn)證框架的詳細(xì)介紹
Struts2中提供了數(shù)據(jù)校驗(yàn)驗(yàn)證數(shù)據(jù)例如驗(yàn)證郵件、數(shù)字等,本篇文章介紹了Struts2之Validator的詳細(xì)介紹,有興趣的可以了解一下。2017-03-03

