@Value为啥取不到值
@Value为啥取不到值
·
调用spring的@Value("${})取不到yml配置文件中的值,
明明value上已经显示出Yml中的值,但是debug的时候,channelNo还是为null.记录一下:
排查半天,原来是我这个类是我新new出来的,不在spring的管理范围内,所以拿不到:
正确的做法:
通过@Autowired 方式,将这个类引入即可。(已解决)
第二个无法通过@value拿到值的坑:
我封装了一个util文件,方法都是static的。也无法拿到yml中的值:
解决办法:
通过set方法给注入进来,即可:
static String channelNo;
@Value("${terminal.wechat.channelNo}")
public void setChannelNo(String channelNo) {
this.channelNo = channelNo;
}
但是类上别忘了加@Component,让spring管理起来
2种方法都能取到了。
更多推荐
已为社区贡献3条内容
所有评论(0)