spring 可以通过xml的配置实现属性的注入。spring boot 的官方提倡使用yml文件配置属性,一种是可以通过@Value注解注入,另外一中就是通过@ConfigurationProperties,实现将属性映射到类中,然后应用系统使用。今天我们来看一下。
先看下配置文件吧
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
配置文件中有常规属性的注入,List的注入,Map的注入,对象属性的注入,想想常规的注入也就是这些了。我们是怎么接收这些属性的呢?
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;
}
}
通过@ConfigurationProperties(prefix="db")
注解开启了属性注入文件。这个类会在配置文件中搜索前缀是db的属性,除去db的前缀之后的属性就会根据类中定义的名称注入进来。注意一定是个Bean,所以加上了@Component
注解。小伙伴们可以试一下。
下节将的内容是:SpringBoot基础教程(十四)——与测试的结合