Sobes.tech
Назад к вопросам
Junior — Middle
65

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

Компании, где спрашивали
Hftlabs

Ответ от нейросети

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 {
        // код, который выполнится после заполнения всех зависимостей
    }
}