SpringBoot讀取yml檔案的3種方式
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: 18
Bean:
#@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; }
可以根據需求選擇其中5種主要方式,Spring Boot可以讀取yml檔案。 yml作為Spring Boot預設的設定檔格式,理解如何操縱yml檔案將有助於我們實現系統配置的靈活性。
以上是SpringBoot讀取yml檔案的3種方式的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

application.yml定義list集合第一種方式使用@ConfigurationProperties註解獲取list集合的所有值type:code:status:-200-300-400-500編寫配置文件對應的實體類,這裡需要注意的是,定義list集合,先定義一個配置類別Bean,然後使用註解@ConfigurationProperties註解來取得list集合值,這裡給大家講解下相關註解的作用@Component將實體類別交給Spring管理@ConfigurationPropertie

SpringBoot讀取yml檔案的主要方式有以下幾種:1.@Value註解我們可以在bean的屬性上使用@Value註解,直接讀取yml中的值,如:application.yml:name:ZhangsanBean:publicclassMyBean{ @Value("${name}")privateStringname;}2.Environment物件我們可以透過注入Environment物件來讀取yml值,如:@AutowiredprivateEnvironmentenv

com.mysql.cj.jdbc.Driver在yml檔案中爆紅的原因前幾天搭建了一個框架,出現一個奇怪的問題,當配置mysql檔案時,com.mysql.cj.jdbc.Driver一直在爆紅,我以為是版本太低了,就升級了高版本,但是還在爆紅,最後我在網上查了半天,網上的方法就是說版本太低了,但是我還是一直不行以前用的依賴包是: mysqlmysql-connector-java8.0.15最後我把版本號碼去掉就好了,mysqlmysql-connector-javadriver-class-na

yml,yaml,properties三種文件都是用來存放配置的文件,一些靜態數據,配置的數據都會存放到裡邊。但是有的時候我們不只需要儲存靜態數據,還需要從文件中讀取數據出來。這三種文件都放在專案--》src--》main--》resource下邊。如果resource裡邊需要存放其他檔案的話,會在resource裡邊建立一個config包。將設定檔存放其中。 1.在專案中新建設定文件,檔案存放位址bootstrap.yml是SpringBoot程式的一個設定文件,在專案啟動前就會被加載,將數

需求場景基礎架構模組中有一些通用固定的基礎配置。例如:日誌的配置,Spring本身的配置以及MyBatisPlus相關的固定配置等等。這些配置往往與環境無關,如何重複使用? #日誌配置logging:level:#記得配置到套件名稱com.agileboot:debugorg.springframework:infopattern:console:"%date%thread%green(%level)[%cyan(%logger{10}):%magenta( %line)]%red(%method

一、服務配置server:port:8989servlet:#context-path就是連接埠號碼與服務之間要加的一段路徑,例如localhost:8080/wcm/login/login的/wcm就是context-path:/二、資料庫連接spring:datasource:driver-class-name:com.mysql.cj.jdbc.Driverurl:jdbc:mysql://127.0.0.1:3306/jxc_manage?useUnicode=true&charac

內容:這裡分別介紹兩種方式,都是基於註解實現,分別是:@Value("${xxxxx.xx}")@ConfigurationProperties(prefix="xxxxx")進入主題:@Value("${xxxxx. xx}")使用這種方式非常簡單(每一個註解獲取一個對應的配置值),在yml裡面加入我們的自訂配置項,如(大小寫隨意,調用時對應好就行):指定獲取這些值去使用,如:@Value("${myKey.tua}&quo

1.基礎用法,使用註解@Autowired注入Environment類別這種方式比較常見,就像注入service或dao一樣,宣告一個Environment類別變量,加上@Autowire註解。如下:importorg.springframework.core.env.Environment;@AutowiredprivateEnvironmentenvironment;使用方法就是透過getProperty(key)方法讀取設定檔中的信息,程式碼如下:1).Yml中的設定heycloud:job
