Sobes.tech
Junior — Middle
146

È possibile chiamare un metodo con annotazione @PreDestroy su un bean di tipo prototype in Spring?

Le aziende dove è stato chiesto
СБЕРСБЕР

Risposta dell'AI

sobes.tech AI

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

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

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