Sobes.tech
Junior — Middle
89

Контейнерде бинді жою кезінде белгілі бір әрекеттерді қалай орнатуға болады?

Сұралған компаниялар
IT OneIT One

AI-дан жауап

sobes.tech AI

Java контейнерлерінде, мысалы Spring Framework-те, бина жойылған кезде әрекеттерді орындау үшін @PreDestroy аннотациясымен әдістерді қолдануға немесе DisposableBean интерфейсін жүзеге асыруға болады.

@PreDestroy мысалы:

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

@Component
public class MyBean {

    @PreDestroy
    public void cleanup() {
        // бина жойылған кезде орындалатын код
        System.out.println("Bean жойылып жатыр");
    }
}

Контейнер жұмысы аяқталғанда немесе бина жойылғанда, cleanup() әдісі автоматты түрде шақырылады.

Алтернативті түрде, DisposableBean интерфейсін жүзеге асыруға болады:

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

@Component
public class MyBean implements DisposableBean {

    @Override
    public void destroy() throws Exception {
        // тазалау коды
        System.out.println("Bean жойылды");
    }
}

Екі әдіс те бина жойылған кезде белгілі бір әрекеттерді орындауды баптауға мүмкіндік береді.