static静态变量使用@Value注入方式

使用@Value 注解static类型

@Component
public class MyConfig {
    @Value("${env}")
    private static String env;

    public static String getEnv() {
        return env;
    }

    public static void setEnv(String env) {
        MyConfig.env = env;
    }
}

使用上面这种方式,Config.getEnv()会返回null


正确写法

@Component
public class MyConfig {

    private static String env;

    public static String getEnv() {
        return env;
    }

    @Value("${env}")
    public void setEnv(String env) {
        MyConfig.env = env;
    }
}

在非静态方法setEnv前使用@Value注解

你可能感兴趣的:(spring,boot)