spring boot @value @ConfigurationProperties 注释静态配置文件变量引用
1.@value
标签加在set方法上面,注意set方法是非静态
private static String userName;@Value(value = "${user.userName}")public void setUserName(String userName) {HelloWorldServiceImpl.userName = userName;}
123456
注意!set方法不能有static关键字
有的小伙伴直接用编辑器自动生成set方法,编辑器会自动生成static的set方法,那样也是不能赋值成功的。
2.@ConfigurationProperties
@ConfigurationProperties(prefix = "author")
public class MyConfig {private static String name;public static String getName() {return name;}public MyConfig setName(String name) {this.name = name;return this;}
}1234567891011121314
3.@PostConstruct(使用配置类给组件中的静态变量赋值)
@Component
public class RestTemplateUtil{@Autowiredpublic PropertiesUtil propertiesUtil;private static String appKey;@PostConstructpublic void init (){appKey = propertiesUtil.getIoAppKey();}
}
12345678910111213
配置类 PropertiesUtil 中的写法,用get方法取值
@Value("${md.appKey}")
private String ioAppKey;
12
参考资料:
1、https://blog.csdn.net/but_yu/article/details/106141370 【20211203】
2、https://blog.csdn.net/weixin_42116127/article/details/115118008?spm=1001.2101.3001.6650.1&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-1.no_search_link&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-1.no_search_link 【20211203】
3、https://blog.csdn.net/weixin_42260311/article/details/86609719 【20211203】