@Value()给静态变量赋值

@value可以直接获取配置文件里的配置信息

今天给静态变量赋值的时候为null,一查才发现@value不能直接给静态变量赋值。需要做如下变通:

把注解放在变量的set方法上面(注意set方法不能用static修饰)

    private static String ENC_PATH;
    private static String TXT_PATH;

    @Value(value = "${RENHANG_FILE_ENC}")
    public void setENC_PATH(String ENC_PATH) {
        this.ENC_PATH = ENC_PATH;
    }

    @Value(value = "${RENHANG_FILE_TXT}")
    public void setTXT_PATH(String TXT_PATH) {
        this.TXT_PATH = TXT_PATH;
    }

另外当前类也要添加注解

@Component  或者其他注解交给spring管理

你可能感兴趣的:(java笔记)