<>();
private Map map2 = new HashMap<>();
//...get、set
}
读取数据的方式,与之类似!
@RestController
public class HelloController {
@Autowired
private Config3 config3;
@GetMapping("config3")
public String config3(){
return JSON.toJSONString(config3);
}
}
- 配置一个List类型的参数
例如在application.properties文件里,当我们想配置一个 List 类型的参数,我们可以这样操作!
//参数定义
config4.userList[0].enable=maillist_1_enable
config4.userList[0].name=maillist_1_name
config4.userList[0].value=maillist_1_value
config4.userList[1].enable=maillist_2_enable
config4.userList[1].name=maillist_2_name
config4.userList[1].value=maillist_2_value
config4.userList[2].enable=maillist_3_enable
config4.userList[2].name=maillist_3_name
config4.userList[2].value=maillist_3_value
然后,创建一个配置类Config4,用于将定义的变量映射到配置类里面。
@Component
@ConfigurationProperties(prefix = "config4")
public class Config4 {
private List userList;
public List getUserList() {
return userList;
}
public void setUserList(List userList) {
this.userList = userList;
}
}
public class UserEntity {
private String enable;
private String name;
private String value;
//...get、set
}
读取数据的方式,与之类似!
@RestController
public class HelloController {
@Autowired
private Config4 config4;
@GetMapping("config4")
public String config4(){
return JSON.toJSONString(config4);
}
}
2.3、通过@PropertySource注解实现配置文件加载
正如我们最开始所介绍的,很多时间,我们希望将配置文件分卡写,比如zookeeper组件对应的服务配置文件是zookeeper.properties,redis组件对应的服务配置文件是redis.properties等等。
这种自定义的配置文件,我们应该如何加载到Spring容器里面呢?
其实方法也很简单,通过@PropertySource就可以实现!
首先,我们在resources资源文件夹下,创建两个配置文件test.properties和bussiness.properties,内容如下!
test.properties