spring 可以通過(guò)xml的配置實(shí)現(xiàn)屬性的注入隔显。spring boot 的官方提倡使用yml文件配置屬性信认,一種是可以通過(guò)@Value注解注入,另外一中就是通過(guò)@ConfigurationProperties,實(shí)現(xiàn)將屬性映射到類(lèi)中户誓,然后應(yīng)用系統(tǒng)使用。今天我們來(lái)看一下幕侠。
先看下配置文件吧
db:
username: root
password: root
ipList:
- 192.168.100.0
- 192.168.100.1
- 192.168.100.2
map:
key1: value1
key2: value2
key3: value3
child:
address: 浙江省杭州市
postcode: 345678
配置文件中有常規(guī)屬性的注入帝美,List的注入,Map的注入晤硕,對(duì)象屬性的注入悼潭,想想常規(guī)的注入也就是這些了。我們是怎么接收這些屬性的呢舞箍?
package com.shuqi;
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Component
@ConfigurationProperties(prefix="db")
@Data
public class DbConf {
private String username;
private String password;
private List<String> ipList;
private Map<String,String> map;
private Child child;
@Data
public static class Child{
private String address;
private String postcode;
}
}
通過(guò)@ConfigurationProperties(prefix="db")
注解開(kāi)啟了屬性注入文件舰褪。這個(gè)類(lèi)會(huì)在配置文件中搜索前綴是db的屬性,除去db的前綴之后的屬性就會(huì)根據(jù)類(lèi)中定義的名稱(chēng)注入進(jìn)來(lái)疏橄。注意一定是個(gè)Bean占拍,所以加上了@Component
注解。小伙伴們可以試一下捎迫。
下節(jié)將的內(nèi)容是:SpringBoot基礎(chǔ)教程(十四)——與測(cè)試的結(jié)合