Spring IoC контейнер: настройка бинов, объединение механизмов жизненного цикла

Начиная с Spring 2.5 у вас есть три варианта управления поведением жизненного цикла бина:

  • Интерфейсы обратного вызова InitializingBean и DisposableBean
  • Пользовательские методы init() и destroy()
  • Аннотации @PostConstruct и @PreDestroy. Вы можете комбинировать эти механизмы для управления данным бином.

Если для bean-компонента настроено несколько механизмов жизненного цикла, и каждый механизм настроен с различным именем метода, то каждый настроенный метод выполняется в порядке, указанном ниже. Однако если одно и то же имя метода настроено - например, init() для метода инициализации - для более чем одного из этих механизмов жизненного цикла, этот метод выполняется один раз.

Несколько механизмов жизненного цикла, настроенных для одного и того же bean-компонента с различными методами инициализации, называются следующим образом:

  • Методы, аннотированные @PostConstruct
  • afterPropertiesSet() как определено интерфейсом обратного вызова InitializingBean
  • Настраиваемый метод init()

Методы уничтожения вызываются в том же порядке:

  • Методы, аннотированные @PreDestroy
  • destroy() как определено интерфейсом обратного вызова DisposableBean
  • Настраиваемый метод destroy()

Читайте также:


Комментарии

Популярные сообщения из этого блога

Методы класса Object в Java

Как получить текущий timestamp в Java

Основные опции JVM для повышения производительности и отладки