Sobes.tech
Junior — Middle
69

Как обеспечить запуск метода в Spring после заполнения всех зависимостей бина для выполнения дополнительных действий

Companies where asked
Hftlabs

Answer from AI

sobes.tech AI

В Spring для выполнения метода после того, как все зависимости бина будут заполнены, можно использовать интерфейс InitializingBean или аннотацию @PostConstruct.

  • @PostConstruct — аннотирует метод, который будет вызван после завершения инъекции зависимостей.

  • InitializingBean — бин реализует метод afterPropertiesSet(), который вызывается после установки всех свойств.

Пример с @PostConstruct:

@Component
public class MyBean {

    @Autowired
    private SomeDependency dependency;

    @PostConstruct
    public void init() {
        // код, который выполнится после заполнения всех зависимостей
    }
}

Пример с InitializingBean:

@Component
public class MyBean implements InitializingBean {

    @Autowired
    private SomeDependency dependency;

    @Override
    public void afterPropertiesSet() throws Exception {
        // код, который выполнится после заполнения всех зависимостей
    }
}