Назад к вопросам
Альфа-Банк
Junior — Middle
66
Какие аннотации, применяемые к классам, доступны для получения из контекста Spring ApplicationContext?
Компании, где спрашивали
Ответ от нейросети
sobes.tech AI
В Spring ApplicationContext можно получить бины, помеченные различными аннотациями, которые указывают, что класс является компонентом для управления Spring. Основные из них:
@Component— базовая аннотация для компонентов.@Service— специализированный компонент для сервисного слоя.@Repository— для компонентов доступа к данным.@Controllerи@RestController— для веб-контроллеров.
Все эти аннотации являются мета-аннотациями @Component, поэтому Spring регистрирует такие классы как бины.
Из контекста можно получить бины по типу или по имени, а также можно получить все бины, помеченные определённой аннотацией, например:
Map<String, Object> services = applicationContext.getBeansWithAnnotation(Service.class);
Таким образом, доступны для получения из контекста классы с аннотациями, которые делают их Spring-бинами.