Встречается на собеседованиях • сегодня
Как получить Bean из ApplicationContext в Spring
В Spring можно получить Bean из ApplicationContext несколькими способами:
- Через метод
getBean():
java
ApplicationContext context = ...;
MyBean bean = context.getBean(MyBean.class);
// или по имени
MyBean bean = (MyBean) context.getBean("myBean");- Через аннотацию
@Autowired(рекомендуемый способ):
java
@Autowired
private MyBean myBean;- Через
ApplicationContextAware:
java
@Component
public class MyComponent implements ApplicationContextAware {
private ApplicationContext context;
@Override
public void setApplicationContext(ApplicationContext applicationContext) {
this.context = applicationContext;
}
public MyBean getBean() {
return context.getBean(MyBean.class);
}
}Прямое использование getBean() считается anti-pattern, лучше использовать dependency injection через @Autowired.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы