Sobes.tech
Junior — Middle
154

Je možné zavolať metódu s anotáciou @PreDestroy na bean typu prototype v Spring?

Spoločnosti boli požiadané
СБЕРСБЕР

Odpoveď od AI

sobes.tech AI

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

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

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