Sobes.tech
Back to questions
Senior
8

Что такое @PreDestroy и @PostConstruct?

Companies where asked
aiins

Answer from AI

sobes.tech AI

@PostConstruct и @PreDestroy — это аннотации из спецификации Java EE (например, в Jakarta EE или Spring), которые используются для управления жизненным циклом бинов (объектов).

  • @PostConstruct помечает метод, который должен быть вызван сразу после того, как бин был создан и все зависимости внедрены. Это удобно для инициализации, настройки или запуска каких-то процессов.

  • @PreDestroy помечает метод, который вызывается перед уничтожением бина, например, для освобождения ресурсов, закрытия соединений и т.п.

Пример использования в Spring:

@Component
public class MyBean {

    @PostConstruct
    public void init() {
        System.out.println("Bean инициализирован");
    }

    @PreDestroy
    public void cleanup() {
        System.out.println("Bean уничтожается");
    }
}

Таким образом, эти аннотации помогают управлять жизненным циклом компонентов без необходимости явно вызывать методы инициализации и очистки.