Проверяет знание основных стереотипных аннотаций 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();
}
}