Sobes.tech
Junior — Middle
155

¿Se puede llamar a un método con la anotación @PreDestroy en un bean de tipo prototype en Spring?

Empresas donde se preguntó
СБЕРСБЕР

Respuesta de la IA

sobes.tech AI

В Spring метод с аннотацией @PreDestroy вызывается при уничтожении бина контейнером. Для бинов с областью prototype Spring не управляет жизненным циклом полностью — он создаёт бин и отдаёт клиенту, но не отслеживает его дальнейшее уничтожение.

Поэтому методы с @PreDestroy не вызываются автоматически для бинов типа prototype. Если нужно выполнить очистку или освобождение ресурсов, то это должен делать сам клиент, который получил бин.

Если требуется, чтобы метод уничтожения вызывался автоматически, лучше использовать область singleton или управлять жизненным циклом вручную.