yaml是鬆綁定的
my:
my-baby: xiongda
my:
myBaby: xiongda
my:
my_baby: xiongda
yaml是鬆綁定的,也就意味着以上三種方式結果都是一致的
@Component
@ConfigurationProperties(prefix = "my")
public class Config {
private String myBaby;
public String getMyBaby() {
return myBaby;
}
public void setMyBaby(String myBaby) {
this.myBaby = myBaby;
}
}
myBaby字段對應的內容都會被set爲 xiongda
幾種常見的類型
一、注入List
my:
list:
- list1
- list2
對應的數據類型
package com.example.demo;
import java.util.List;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;
@Component
@ConfigurationProperties(prefix = "my")
public class Config {
private List<String> list;
public List<String> getList() {
return list;
}
public void setList(List<String> list) {
this.list = list;
}
}
二、注入Map
my:
map:
name: xiongda
age : 18
對應數據類型
package com.example.demo;
import java.util.List;
import java.util.Map;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;
@Component
@ConfigurationProperties(prefix = "my")
public class Config {
private Map<String, Object> map;
public Map<String, Object> getMap() {
return map;
}
public void setMap(Map<String, Object> map) {
this.map = map;
}
}
三、注入pojo
my:
person:
name: xiongda
age : 18
對應數據類型
package com.example.demo;
import java.util.List;
import java.util.Map;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;
@Component
@ConfigurationProperties(prefix = "my")
public class Config {
private Person person;
public Person getPerson() {
return person;
}
public void setPerson(Person person) {
this.person = person;
}
}
四、List嵌入
my:
lists:
- [1,2,3]
- [4,5,6]
對應數據類型
package com.example.demo;
import java.util.List;
import java.util.Map;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;
@Component
@ConfigurationProperties(prefix = "my")
public class Config {
private List<List<Integer>> lists;
public List<List<Integer>> getLists() {
return lists;
}
public void setLists(List<List<Integer>> lists) {
this.lists = lists;
}
}