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

Как называется процесс получения доступа к бину из контекста

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

  1. Dependency Injection (основной способ) - через аннотации:
    • @Autowired (поле, конструктор, сеттер)
    • @Inject (JSR-330)
    • @Resource (JSR-250)
java
@Service
public class MyService {
    @Autowired
    private MyRepository repository;
}
  1. Через ApplicationContext (если нужен программный доступ):
java
ApplicationContext context = ...;
MyBean bean = context.getBean(MyBean.class);
  1. Через интерфейс ApplicationContextAware:
java
@Component
public class MyBean implements ApplicationContextAware {
    private ApplicationContext context;

    @Override
    public void setApplicationContext(ApplicationContext ctx) {
        this.context = ctx;
    }
}

Лучшая практика - использовать Dependency Injection, так как это соответствует принципам IoC. Прямой доступ к контексту нужен только в особых случаях.

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

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

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

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