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

Как создается и инициализируется контекст приложения в Spring Framework?

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

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

sobes.tech AI

В Spring Framework контекст приложения создается с помощью реализации интерфейса ApplicationContext. Обычно это происходит при запуске приложения, когда Spring загружает конфигурацию и инициализирует все бины.

Процесс создания и инициализации контекста:

  1. Выбор реализации ApplicationContext — например, ClassPathXmlApplicationContext для XML-конфигурации или AnnotationConfigApplicationContext для конфигурации на основе аннотаций.

  2. Загрузка конфигурации — Spring читает определения бинов из XML-файлов, классов с аннотациями @Configuration, или других источников.

  3. Создание и инициализация бинов — Spring создает объекты, управляет их зависимостями (через DI), вызывает методы инициализации.

  4. Готовность к использованию — после полной инициализации контекст готов предоставлять бины по запросу.

Пример создания контекста с аннотациями:

import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;

public class App {
    public static void main(String[] args) {
        ApplicationContext context = new AnnotationConfigApplicationContext(AppConfig.class);
        MyBean bean = context.getBean(MyBean.class);
        bean.doSomething();
    }
}

Здесь AppConfig — класс с аннотациями @Configuration и определениями бинов, а AnnotationConfigApplicationContext загружает и инициализирует контекст на его основе.