Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про Java: component, service, repository, controller, configuration

Какие аннотации используются для создания бинов и компонентов в Spring?

Проверяет знание основных стереотипных аннотаций Spring.

Короткий ответ

Для определения компонентов используют:

  • @Component — общий стереотип,

  • @Service — для сервисного слоя,

  • @Repository — для слоя доступа к данным,

  • @Controller/@RestController — для веб-слоя.

Также @Configuration вместе с @Bean объявляет методы, возвращающие Beans.

 

Длинный ответ

Стереотипные аннотации:

  • @Component — базовый для любого компонента.

  • @Service — семантически обозначает бизнес-логику.

  • @Repository — помимо регистрации в контексте, обрабатывает перевод исключений доступа к данным в DataAccessException.

  • @Controller — для MVC-контроллеров; @RestController = @Controller + @ResponseBody.

Конфигурационные:

  • @Configuration — класс, содержащий методы @Bean.

  • @Bean — метод возвращает экземпляр, регистрируемый как Bean.

Другие полезные:

  • @ComponentScan — указывает пакеты для сканирования аннотаций.

  • @Import — импорт конфигураций из других классов.

Пример:

@Configuration
public class AppConfig {
    	@Bean
    	public MyService myService() {
       		return new MyServiceImpl();
    	}
}

Уровень

  • Рейтинг:

    2

  • Сложность:

    4

Навыки

  • Java

    Java

Ключевые слова

#component

#service

#repository

#controller

#configuration

Подпишись на Java Developer в телеграм