如何解决 Java 线程类无法使用 @Autowired 注解注入依赖的问题?
java 线程类无法注入
为了解决 java 线程类无法使用 @autowired 注解注入的问题,可以使用构造器注入的方法。具体步骤如下:
1. 定义线程类
将需要注入的依赖项作为构造函数的参数:
public class mythread implements runnable { private redisclient redisclient; private myservice myservice; public mythread(redisclient redisclient, myservice myservice) { this.redisclient = redisclient; this.myservice = myservice; } @override public void run() { // 使用已注入的依赖项... } }
2. 调用线程类
在调用线程类时,通过构造函数传参进行注入:
mythread thread = new mythread(redisclient, myservice); thread.start();
3. 注入配置
在 spring 配置文件中,使用
<bean id="myThread" class="MyThread"> <constructor-arg ref="redisClient" /> <constructor-arg ref="myService" /> </bean>
通过构造器注入的方式,可以成功将需要的依赖项注入到 java 线程类中,解决原先的问题。
以上就是如何解决 Java 线程类无法使用 @Autowired 注解注入依赖的问题?的详细内容,更多请关注其它相关文章!