Подтвердить что ты не робот

Каков жизненный цикл spring bean?

Я запутался в жизненном цикле Spring.

XmlBeanFactory beanFactory 
= new XmlBeanFactory(new ClassPathResource("SpringHelloWorld.xml"));

Создает ли этот фрагмент кода код объекта или нет?

Если приведенный выше ответ верен.

a) Затем для bean, где scope является "singleton", получите объект, который был создан во время вышеописанного фрагмента кода. Я прав или не прав?

b) В случае, когда область видимости "prototype", был ли созданный объект не использован. Потому что контейнер всегда возвращает новый объект.

XmlBeanFactory beanFactory 
= new XmlBeanFactory(new ClassPathResource("SpringHelloWorld.xml"));

Создает ли этот фрагмент кода код объекта или нет?

Если ответ неверный,

Как структура spring проверяет правильность определения bean или нет.

From the answer of Henry

Usually, singleton beans are created when the context starts. This can be changed with the lazy-init or default-lazy-init attributes.

Prototype beans are only created when needed.

Only syntactically, there might still be errors when the bean is instantiated, for example if a required property is not provided.

4b9b3361

Ответ 1

BeanFactory не создает предварительные экземпляры синглтонов при запуске, например, ApplicationContext. Поэтому, даже если ваш bean не является ленивым и singleton, он не будет создан.

prototype beans создаются по требованию, каждый раз, когда вы запрашиваете прототип bean, вы получите новый экземпляр. Но как только этот bean использовался во время автоустановки, тот же экземпляр будет использоваться навсегда.

С ApplicationContext все синглтоны создаются с нетерпением и прототипом beans только по требованию.

См. также

Ответ 2

Как правило, singleton beans создаются при запуске контекста. Это можно изменить с помощью атрибутов lazy-init или default-lazy-init.

Прототип beans создаются только при необходимости.