Runnable'ı uygulayan ve TaskExecutor autowired yaylarına gönderilen bir sınıfa nasıl sahip olabilirsiniz?Autowiring Görevleri Spring TaskExecutor'a gönderildi
public class MyTask implements Runnable {
@Autowired private MyRepository myRepository;
@Override
public void run() {
myRepository.doSomething();
}
}
Ve bahar TaskExecutor bir görev gönderen bir servis:
@Service
public class MyService {
@Autowired private TaskExecutor taskExecutor;
public void someMethod() {
MyTask myTask = new MyTask();
taskExecutor.execute(myTask);
}
}
Ben MyTask çünkü alanları autowired edilmiyor biliyorum Örneğin
, ben Görev var Yeni MyTask() kullanarak örnekleniyor. Ancak, bu konuda nasıl alabilirim? Spring'in ApplicationContext'ine erişip, fasulyeyi bunun üzerinden yaratmalı mıyım? Bunu bir web uygulama ortamında nasıl yaparsınız?
Teşekkürler!
Evet, bu işe yarar. Autowiring'in görevde çalışmasını umuyordum çünkü çok sayıda bağımlılığım var ve hepsinden daha fazlasını geçmemek istiyorum - bununla ilgili bir yol olmayabilir. –
Başka bir yol var, bkz. Güncelleme –
@EvgeniyDorofeev MyTask'ı prototip olarak nasıl tanımlarım? – Dejell