utils工具类需要spring注入对象

在代码优化中,创建了StaticUtils工具类供多个Controller使用。为了解决静态方法中使用Spring注入对象的问题,通过在工具类添加@Component注解使其被Spring扫描,并使用@Resource注解注入所需对象。同时,利用@PostConstruct初始化静态工具类实例,以便静态方法能访问注入的对象。

最近优化代码的时候,遇到了个小问题,写了一个公共方法好几个controller要使用,所以要提取工具类,但是涉及到了static的工具类中通过sprin注入对象问题。然后查了度娘得出解决办法,上代码记录一下。

需要加上@component注解把工具类让spring扫描到,bean交给spring管理

@Component
public class StaticUtils {

这里是需要注入的对象使用@resource交给spring来注入

@Resource
private FaceTest faceTest;

声明一个本静态工具类对象
private static StaticUtils staticUtils;
加入注解@postcontruct来初始化这个bean
@PostConstruct
public void init(){

staticUtils=this;
staticUtils.faceTest=this.faceTest;
}

因为工具方法大多都是静态方法 要使用注入的对象就需要赋值给当前静态类
public static List<FaceTest> getFaceTest(){
List<FaceTest> list=staticUtils.faceTest.query();
return list;

这样就ok了。
}
}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值