自动布线任务发送到弹簧任务执行器
你怎么能有一个实现Runnable并提交到spring TaskExecutor自动连接的类?
例如,我有一个任务:
public class MyTask implements Runnable {
@Autowired private MyRepository myRepository;
@Override
public void run() {
myRepository.doSomething();
}
}
以及向 spring TaskExecutor 发送任务的服务:
@Service
public class MyService {
@Autowired private TaskExecutor taskExecutor;
public void someMethod() {
MyTask myTask = new MyTask();
taskExecutor.execute(myTask);
}
}
我知道这些字段没有被自动连接,因为MyTask正在使用新的MyTask()进行实例化。但是,我该如何解决这个问题?我应该访问Spring的AppplicationContext并通过它创建Bean吗?在 Web 应用程序环境中,您将如何执行此操作?
谢谢!