@Value不能直接给静态变量赋值的解决办法
今天遇到一个问题特别给总结下来,方便以后查看,也给别人提个醒
平时在是用 @Value 注解的时候 直接将@value注解加在变量上即可
![ZhuXS博客一 : Springboot项目中[email protected]不能直接给静态变量赋值 ZhuXS博客一 : Springboot项目中[email protected]不能直接给静态变量赋值](/default/index/img?u=L2RlZmF1bHQvaW5kZXgvaW1nP3U9YUhSMGNITTZMeTl3YVdGdWMyaGxiaTVqYjIwdmFXMWhaMlZ6THpZd09DOHpZemhsWlRabU1HSTRNak5oT0RZMU1tTTVaV1E0WXpNd05HTTVPV0l5T0M1d2JtYz0=)
在springboot项目中 ,Spring Boot 不支持把用注解方式注入到静态变量中,如下图
![ZhuXS博客一 : Springboot项目中[email protected]不能直接给静态变量赋值 ZhuXS博客一 : Springboot项目中[email protected]不能直接给静态变量赋值](/default/index/img?u=L2RlZmF1bHQvaW5kZXgvaW1nP3U9YUhSMGNITTZMeTl3YVdGdWMyaGxiaTVqYjIwdmFXMWhaMlZ6THpFMU5TOWpNREEzWXpVMU5tRTNaalUxWWpVME16VmlOamhpT1RGbE9EazRPREE1WWk1d2JtYz0=)
虽然Spring Boot 不支持把用注解方式注入到静态变量中 但是也给出了解决的方案,把@Value("${oss_accessKeyId}")放在静态变量的set方法上面即可(注意,set方法不能是静态的,如果你的变量是静态的,用IDE工具生成set方法默认set方法也是静态的) 如下图(值是我乱写的,仅供测试)
多提醒一下如果以上步骤昨完还没有值,请在类上加一个 "@Component"注解,把类交给spring容器.
第一篇博客,如有不足请多见谅,请多指教