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對象
我們可以通過注入Environment對象來讀取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來加載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文件中用—分隔了多個文檔,我們可以使用@YamlComponent注解將每份文檔映射到一個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默認的配置文件格式,理解如何操縱yml文件將有助于我們實現(xiàn)系統(tǒng)配置的靈活性。
到此這篇關(guān)于SpringBoot 讀取yml文件的幾種方式的文章就介紹到這了,更多相關(guān)SpringBoot 讀取yml文件內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
詳解Idea 2019.2 安裝lombok插件失效問題解決
這篇文章主要介紹了詳解Idea 2019.2 安裝lombok插件失效問題解決,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-10-10
SpringMVC實現(xiàn)自定義類型轉(zhuǎn)換器
本篇文章主要介紹了SpringMVC實現(xiàn)自定義類型轉(zhuǎn)換器 ,詳細的介紹了自定義類型轉(zhuǎn)換器的用法和好處,有興趣的可以了解一下。2017-04-04
SpringBoot整合MybatisPlus實現(xiàn)增刪改查功能
MybatisPlus是國產(chǎn)的第三方插件,?它封裝了許多常用的CURDapi,免去了我們寫mapper.xml的重復(fù)勞動。本文將整合MybatisPlus實現(xiàn)增刪改查功能,感興趣的可以了解一下2022-05-05
SpringBoot+Response如何統(tǒng)一返回result結(jié)果集
這篇文章主要介紹了SpringBoot+Response如何統(tǒng)一返回result結(jié)果集,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-05-05

