好久没写日志了,今天记录一下工作中遇到的一些问题,欢迎大家一块讨论
今天跟大伙分享的事使用Springboot时,想Utils类里面注入接口。很多小伙伴会直接使用@Autowired,会发现这种方法在controller,service中都是可行的。但是在Utils中的静态方法中获取的就是null,下面我介绍一下我的方法,希望有用到的小伙伴少走弯路。
首先在咱们的工具类上面添加@Component主机,使他成为一个接口,也方便咱们后边调用。我以注入一个restTemplate为例,先定义一个普通的静态私有属性
/**
* RestTemplate类加载
*/
private static RestTemplate restTemplate;
然后使用init方法进行初始化
@Autowired
public void init(RestTemplate restTemplate) {
RestTemplateUtil.restTemplate = restTemplate;
}
注意此处需要在init方法上添加@Autowired注解,RestTemplateUtil是我的类名。init方法的作用是将RestTemplateUtil类中的restTemplate属性初始化
然后就可以直接使用restTemplate接口中的方法了。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~结束