【疑难解答】@Value 注解不生效的原因
1. 问题描述
@Value 注解未生效,属性默认为 NULL
/** * 过期时间(单位: 毫秒) */
@Value("${jwt.expire-time}")
public static long EXPIRATION;2. 原因分析
1. 当我们使用 @Value 注解时需要注意满意以下条件: @Component、@Service、@Controller、@Repository、@Bean 注解
2. 不能直接注入到 static 字段
3. 字段不能被 final 类型修饰
4. 属性值必须在配置文件中存在
上述我的配置没有生效的原因是通过 static 进行了修饰
3. 解决方案
根据上述原因分析的内容,我只需要去掉 static 关键词即可。
