Sobes.tech
Назад к вопросам
Junior — Middle
69

Будет ли выполнен PostBeanProcessor перед вызовом методов, аннотированных @PostConstruct?

Компании, где спрашивали
DCloud

Ответ от нейросети

sobes.tech AI

В Spring Framework методы, аннотированные @PostConstruct, вызываются после того, как все BeanPostProcessor были применены к бину, то есть после этапа пост-обработки бина.

Процесс инициализации бина примерно такой:

  1. Создание экземпляра бина.
  2. Внедрение зависимостей (DI).
  3. Вызов методов BeanPostProcessor.postProcessBeforeInitialization.
  4. Вызов методов, аннотированных @PostConstruct.
  5. Вызов методов BeanPostProcessor.postProcessAfterInitialization.

Таким образом, PostBeanProcessor (если имеется в виду BeanPostProcessor) выполняется до вызова методов с @PostConstruct только в части postProcessBeforeInitialization. После @PostConstruct вызывается postProcessAfterInitialization.

Если же под "PostBeanProcessor" понимается именно postProcessAfterInitialization, то он выполняется после @PostConstruct.