Sobes.tech
Junior

Jak spustit kód poté, co Spring injektoval všechny závislosti beanu?

sobes.tech AI

Odpověď od AI

Ve Springu můžete spustit kód po tom, co jsou všechny závislosti beanu injektovány, pomocí rozhraní InitializingBean nebo anotace @PostConstruct.

Příklad s @PostConstruct:

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

@Component
public class MyBean {

    @PostConstruct
    public void init() {
        // Tato metoda bude volána po injektování všech závislostí
        System.out.println("Všechny závislosti byly injektovány, lze provést inicializaci");
    }
}

Alternativně lze implementovat rozhraní InitializingBean a přepsat metodu afterPropertiesSet():

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

@Component
public class MyBean implements InitializingBean {

    @Override
    public void afterPropertiesSet() throws Exception {
        // Kód, který se provede po injektování závislostí
    }
}

Obě metody zaručují, že kód bude spuště po dokončení injektování všech závislostí Springem.