读取yml文件中列表
@Value 和 @ConfigurationProperties :这两者都可以读取配置文件中的数据
下面例子中的access.urls 的值只能通过 @ConfigurationProperties 得到
@Value 注解是无法获取的

access:
urls:
- /login.*
- /js.*
- /img.*
- /css.*
@Value不行就用@ConfigurationProperties
使用
@ConfigurationProperties需要提供setter方法
exp:
@Configuration
@ConfigurationProperties(prefix = "access")
public class AllowUrls {
private List<String> urls;
public void setUrls(List<String> urls) {
this.urls = urls;
}
public List<String> getUrls() {
return urls;
}
}
上面中的值的使用
@Controller
public class TestController {
@Resource
private AllowUrls allowUrls;
@RequestMapping("/test")
@ResponseBody
public String test() {
return JSON.toJSONString(allowUrls.getUrls());
}
}
@ConfigurationProperties读取同一个元素只能读取一次,所以一般放在 @Configuration中

在另一个类中使用@ConfigurationProperties
总结:@ConfigurationProperties(prefix="value") ,value:在一个项目中,唯一

浙公网安备 33010602011771号