springboot使用@Value注解给静态变量赋值
springboot项目开发中,遇到一个问题,使用@Value注解从配置文件动态获取属性的值
但是这个属性需要在static的方法中使用,就需要声明为static,
结果运行的时候无法获取配置文件的值
下面的写法是错误的
@Value("${bigDecimal.scale:10}")
public static int bigDecimalScale;
下面的写法是正确,才可以获取到值,注意set方法不能是static的,set方法的形参不能跟属性名一样,可以随便起个名字
@Value("${bigDecimal.scale:10}") public void setBigDecimalScale(int scale) { MixRankerLtvCompare.bigDecimalScale = scale; } public static int bigDecimalScale;