Sobes.tech
Junior — Middle

Hogyan lehet beállítani bizonyos műveletek végrehajtását egy bean törlésekor a konténerben?

sobes.tech MI

Válasz az MI-től

Java-konténerekben, például a Spring Frameworkben, a bean törlésekor végrehajtandó műveleteket az @PreDestroy annotációval ellátott metódusokkal vagy a DisposableBean interfész megvalósításával lehet beállítani.

@PreDestroy példával:

import javax.annotation.PreDestroy;
import org.springframework.stereotype.Component;

@Component
public class MyBean {

    @PreDestroy
    public void cleanup() {
        // kód, amely a bean törlésekor fut le
        System.out.println("Bean törlés alatt");
    }
}

A konténer vagy a bean véglegesítésekor vagy törlésekor a cleanup() metódus automatikusan meghívódik.

Alternatívaként, a DisposableBean interfész megvalósítása is lehetséges:

import org.springframework.beans.factory.DisposableBean;
import org.springframework.stereotype.Component;

@Component
public class MyBean implements DisposableBean {

    @Override
    public void destroy() throws Exception {
        // takarítási kód
        System.out.println("Bean törölve");
    }
}

Mindkét módszer lehetővé teszi, hogy beállítsa a végrehajtandó műveleteket a bean törlésekor.