SpringBoot 配置檔案給實體注入值
SpringBoot 預設的全域性配置檔案有兩個 application.properties
和application.yml
properties用法
# 例如修改埠號 直接賦值
server.port=8888
yaml用法
# 例如修改埠號
server:
port: 8888
- YML中賦值是以鍵值對的形式,且利用縮排表示層級關係,同一級縮排必須一致
- 大小寫敏感,支援鬆散寫法,且冒號後面必須有一個空格
通過配置檔案給實體類注入屬性
// 實體類
@Component // 把實體類放入到spring容器中
@ConfigurationProperties(prefix = "student") // 識別配置檔案
public class Student {
private String name;
private int age;
private boolean sex;
private Date birthday;
private Map<String, Object> location;
private String[] hobbies;
private List<String> skills;
private Pet pet;
// .... set/get/toString
}
# yml 配置檔案
student:
name: zs
age: 23
sex: true
birthday: 2020/10/1
location: {province: 湖北,city: 武漢, zone: 洪山}
hobbies: [足球, 籃球]
skills: [程式設計, 金融]
pet:
nickName: wc
strain: hsq
在這裡注意不同資料型別的寫法,簡單的資料直接賦值
# map型別和物件型別 的兩種寫法
# 1.行內寫法
location: {province: 湖北,city: 武漢, zone: 洪山}
pet: {nickName: wc, strain: hsq}
# 2.分行寫
location:
province: 湖北
city: 武漢
zone: 洪山
pet:
nickName: wc
strain: hsq
# 陣列、list、set
# 1、行內寫法, 其中中括號還可以省略
hobbies: [足球, 籃球]
skills: [程式設計, 金融]
# 2、分行寫
hobbies:
- 足球
- 籃球
skills:
- 程式設計
- 金融
到 SpringBoot 測試檔案中測試輸出
@Autowired
Student student;
@Test
void contextLoads() {
System.out.println(student);
}
結果
Student{name='zs', age=23, sex=true, birthday=Thu Oct 01 00:00:00 CST 2020, location={province=湖北, city=武漢, zone=洪山}, hobbies=[足球,籃球], skills=[程式設計, 金融], pet=Pet{nickName='wc', strain='hsq'}}
上面yml中注意
# 如果對字串加單引號,雙引號會有什麼區別
location: {province: "湖北",city: '武漢', zone: 洪山}
# 如果引號中只是字串時沒什麼區別
location: {province: "湖\n北",city: '武\n漢', zone: 洪\n山}
# 此時雙引號中的轉義字元會被識別,會換行,單引號和不加引號會原樣輸出
也可以使用properties注入
student.name=ls
student.age=24
...
連個配置檔案可以互補,properties檔案優先順序高於yml
相關文章
- SpringBoot基礎學習(二) SpringBoot全域性配置檔案及配置檔案屬性值注入Spring Boot
- springboot yml 配置檔案注入Map,ListSpring Boot
- 【SpringBoot】配置檔案Spring Boot
- Springboot配置檔案Spring Boot
- SpringBoot(配置檔案)Spring Boot
- 3 springboot配置檔案Spring Boot
- 【SpringBoot】YAML 配置檔案Spring BootYAML
- SpringBoot-配置檔案Spring Boot
- 結合SpEL使用@Value-基於配置檔案或非配置的檔案的值注入-Spring BootSpring Boot
- SpringBoot專案配置檔案加密Spring Boot加密
- springboot讀取配置檔案Spring Boot
- SpringBoot之logback配置檔案Spring Boot
- Springboot載入配置檔案Spring Boot
- springboot上傳檔案配置Spring Boot
- SpringBoot配置檔案佔位符Spring Boot
- [SpringBoot] 配置檔案 與常用方法Spring Boot
- SpringBoot專案配置檔案佔位符Spring Boot
- application.yml檔案配置springboot專案APPSpring Boot
- [springboot]配置檔案載入順序Spring Boot
- SpringBoot讀取自定義配置檔案Spring Boot
- springboot如何使用自定義配置檔案Spring Boot
- SpringBoot專案中獲取配置檔案的配置資訊Spring Boot
- SpringBoot是如何載入配置檔案的?Spring Boot
- SpringBoot配置檔案敏感資訊加密方案Spring Boot加密
- SpringBoot配置檔案讀取過程分析Spring Boot
- Springboot 載入配置檔案原始碼分析Spring Boot原始碼
- SpringBoot2配置檔案application.yamlSpring BootAPPYAML
- SpringBoot專案配置檔案中密碼的加密Spring Boot密碼加密
- SpringBoot原始碼解析-配置檔案的載入Spring Boot原始碼
- SpringBoot 如何讓yml,properties配置檔案有提示Spring Boot
- springboot基於properties檔案型別安全配置Spring Boot型別
- springboot讀取自定義配置檔案節點Spring Boot
- springboot使用logback記錄日誌,配置檔案Spring Boot
- SpringBoot載入配置檔案(@PropertySource@importSource@Value)Spring BootImport
- SpringBoot載入子模組配置檔案的方法Spring Boot
- SpringBoot 如何解析配置檔案中的list?Spring Boot
- jackson學習之九:springboot整合(配置檔案)Spring Boot
- 【springboot讀取配置檔案】@ConfigurationProperties、@PropertySource和@ValueSpring Boot