Sobes.tech
Junior — Middle

Hoe vaak wordt de met @PreDestroy geannoteerde methode aangeroepen bij het beëindigen van de levenscyclus van de bean in Spring?

sobes.tech AI

Antwoord van AI

De met die is aangeduid met @PreDestroy in Spring wordt één keer aangeroepen aan het einde van de levenscyclus van de bean, dat wil zeggen voordat deze door de Spring-container wordt vernietigd.

Dit gebeurt in de volgende gevallen:

  • Bij het stoppen van de applicatie of de Spring-context.
  • Bij het verwijderen van een bean scope (bijvoorbeeld voor een sessie- of verzoekscope).

@PreDestroy wordt gebruikt om resources vrij te maken, verbindingen te sluiten, de status op te slaan en andere afsluitende operaties uit te voeren.

Voorbeeld:

@Component
public class MyBean {

    @PreDestroy
    public void cleanup() {
        System.out.println("Bean wordt vernietigd");
        // resources vrijmaken
    }
}

Op deze manier wordt de methode met @PreDestroy precies één keer uitgevoerd tijdens de levenscyclus van de bean, direct voor de vernietiging ervan.