Есть 5 аннотаций, которые можно использовать для создания весенних бобов. Перечислите ответы ниже.
Вам действительно нужен интерфейс? Если вы собираетесь иметь одну реализацию для каждого интерфейса службы, просто избегайте этого, используйте только класс. Конечно, если у вас нет RMI или когда требуется интерфейсный прокси.
@Repository - используйте для внедрения классов вашего слоя dao.
@Service - используйте для внедрения классов вашего уровня обслуживания. На уровне обслуживания вам также может потребоваться аннотация @Transactional для управления транзакциями db.
@Controller - используйте для контроллеров уровня внешнего интерфейса, таких как управляемые компоненты JSF, внедряемые как компоненты Spring.
@RestController - используйте для контроллеров пружинного отдыха, это поможет вам избежать каждый раз добавлять аннотации @ResponseBody и @RequestBody в ваши методы отдыха.
@Component - используйте его в любом другом случае, когда вам нужно ввести Spring bean, который не является контроллером, службой или классом dao