Autowire прототипа боба в прототип боба?

Я работаю с некоторым существующим кодом, и он делает то, чего раньше не видел. Я имел дело с автоматическим подключением прототипов bean-компонентов к синглетонам с помощью метода инъекции или получения bean-компонента из контекста с помощью getBean (). То, что я вижу в этом коде, над которым я работаю, это bean-компонент, который является прототипом и извлекается с помощью getBean (), и у него есть зависимости с автосвязью. Большинство из них - синглтон-бобы, что имеет смысл. Но есть автопровод другого прототипа, и из того, что я вижу, кажется, что он получает новый компонент. Мой вопрос: когда вы автоматически соедините прототип с прототипом, это даст вам новый экземпляр? Поскольку запрос autowire выполняется не при запуске, а при создании этого компонента, идет ли он и создает новый экземпляр? Это идет вразрез с тем, что я думал о бинах autowire и прототипов, и я хотел услышать ответ от дикой природы. Спасибо за понимание. Я пытаюсь свести к минимуму мой рефакторинг этого кода, так как он немного спагетти-иш.

пример:

@Scope("prototype")
public class MyPrototypeClass  {

    @Autowired
    private ReallyGoodSingletonService svc;

    @Autowired
    private APrototypeBean bean;

    public void doSomething() {
        bean.doAThing();
    }
}

@Scope("prototype)
public class APrototypeBean {
   private int stuffgoeshere;

   public void doAThing() {
   }
}

Итак, когда вызывается doSomething () в MyPrototypeClass, является ли этот «компонент» одиночным или новым для каждого экземпляра MyPrototypeClass?

Ответы на вопрос(3)

Ваш ответ на вопрос