@Value注解不能给静态变量直接赋值
平时使用直接在变量上加@Value注解就可以从配置文件中取到值 @Value("${tencent.totalNum}") private String totalNum; 但是当url被static修饰之后,就赋不了值。 @Value("${tencent.totalNum}") private static String totalNum; 这里是因为SpringBoot不允许/不支持把值注入到静态变量中,但是也给出了解决的方案. 3.把@Value("${tencent.totalNum}")放在静态变量的set方法上面即可,需要注意的是set方法要去掉static,有些朋友习惯性的快捷键生成set方法而没有去掉static,导致还是赋值失败。还有就是当前类要交给Spring来管理,即使用@Component及衍生注解。 private static String totalNum; // 记得去掉static @Value("${tencent.totalNum}") public void setTotalNum(String totalNum) { SyncDeviceNumUtil.totalNum= totalNum; }