Назад к вопросам
Senior
7
Какой жизненный цикл у Spring бина?
Компании, где спрашивали
EXPERA
Ответ от нейросети
sobes.tech AI
Жизненный цикл Spring бина включает несколько этапов:
- Создание экземпляра — Spring создает объект бина, обычно через конструктор.
- Внедрение зависимостей — происходит автосвязывание и установка значений свойств.
- Обработка методов обратного вызова — если бин реализует интерфейсы
BeanNameAware,BeanFactoryAwareи т.п., вызываются соответствующие методы. - Инициализация — вызывается метод, помеченный
@PostConstructили методafterPropertiesSet()из интерфейсаInitializingBean. - Использование бина — бин готов к работе и используется в приложении.
- Уничтожение — при завершении контекста вызываются методы
@PreDestroyилиdestroy()из интерфейсаDisposableBean.
Пример с использованием аннотаций:
@Component
public class MyBean {
@PostConstruct
public void init() {
// инициализация после внедрения зависимостей
}
@PreDestroy
public void cleanup() {
// очистка ресурсов перед уничтожением
}
}