Встречается на собеседованиях • сегодня
Будет ли вызван метод, помеченный как Prototype с аннотацией PreDestroy
Нет, метод с аннотацией @PreDestroy не будет вызван для бинов с областью видимости prototype.
Причина:
Spring управляет полным жизненным циклом только для бинов с областью singleton. Для prototype Spring создает экземпляр, внедряет зависимости и передает управление клиенту, не отслеживая его дальнейшую жизнь.
Пример:
java
@Scope("prototype")
@Component
public class PrototypeBean {
@PreDestroy
public void cleanup() {
System.out.println("Этот метод не вызовется!");
}
}Если нужно освободить ресурсы, используйте ручное управление (например, DisposableBean или явный вызов метода).

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы