如何在Spring Boot项目里利用Utils工具类加载配置文件
最编程
2024-02-21 11:37:22
...
在springboot中读取配置文件非常简单,只需要在类中定义一个私有属性,然后再该属性中使用@Value注解即可,例如
/**
* 系统名称
*/
@Value("system.sign.sysName")
private String sysName;
就可以使用配置文件中定义的字段了,当然这不是本文要讲解的重点。
在使用Util类时如果以上面这种方式获取配置文件字段,在以static修饰的静态方法中只能获取到null,下面讲解一下另一种获取配置文件的方式
定义一个配置文件类,例如叫SystemPropertiesConfig,在该类中定义跟配置文件字段名相同的字段属性。在类名前面添加注解
@Component
@ConfigurationProperties(prefix = "system.sign")
prefix是我本地环境的配置,配置文件中我的字段名为system.sign.sysName = XXX
代码为:
/**
* 系统信息配置
*/
@Component
@ConfigurationProperties(prefix = "system.sign")
public class SystemPropertiesConfig {
/**
* 系统名称
*/
private String sysName;
public String getSysName() {
return sysName;
}
public void setSysName(String sysName) {
this.sysName = sysName;
}
}
下面的工作就是将SystemPropertiesConfig类注入到Util工具类中,我的上一篇博客中已经讲明怎样使用,在这里再啰嗦一遍
比如我们要注入RestTemplateUtil工具类,首先在工具类上添加注解@Component
然后定义一个静态私有属性,如
private static SystemPropertiesConfig systemPropertiesConfig;
再使用init方法进行初始化
@Autowired
public void init(SystemPropertiesConfig systemPropertiesConfig) {
RestTemplateUtil.systemPropertiesConfig = systemPropertiesConfig;
}
然后就可以在静态方法中调用systemPropertiesConfig中的参数了,就是这么简单
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~结束