Вы должны сделать BackgroundThread
a прототип bean:
@Bean
@Scope(ConfigurableBeanFactory.SCOPE_PROTOTYPE)
public BackgroundThread backgroundThreadBean(Dep1 dep1) {
return new BackgroundThread(dep1);
}
Затем просто введите BackgroundThread
в BackgroundThreadManager
:
@Autowired
private BackgroundThread thread;
Если вам нужно динамически создать несколько экземпляров BackgroundThread
, тогда можно использовать ObjectFactory
. Введите фабрику в BackgroundThreadManager
:
@Autowired
private ObjectFactory<BackgroundThread> backgroundThreadObjectFactory;
и вызовите метод ObjectFactory.getObject
, чтобы создать новый экземпляр BackgroundThread
.
Подробнее о prototype scope можно найти здесь .