Встречается на собеседованиях • сегодня

Как можно получить данные из контекста

В Spring можно получить данные из контекста несколькими способами:

  1. Через @Autowired ApplicationContext:
java
@Autowired
private ApplicationContext context;

public void getBean() {
    MyService service = context.getBean(MyService.class);
}
  1. Через ApplicationContextAware:
java
@Component
public class MyComponent implements ApplicationContextAware {
    private ApplicationContext context;

    @Override
    public void setApplicationContext(ApplicationContext context) {
        this.context = context;
    }
}
  1. Через статический доступ (не рекомендуется):
java
ApplicationContext context = 
    new ClassPathXmlApplicationContext("applicationContext.xml");
  1. Через @Autowired конкретного бина:
java
@Autowired
private MyService myService;

Лучше использовать внедрение зависимостей через @Autowired, а не явное получение из контекста.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы