Junior — Middle
Je povinné používat anotaci @Autowired k označení, že závislost má být injektována?
sobes.tech AI
Odpověď od AI
Использование аннотации @Autowired в Spring не является единственным способом указать, что зависимость должна быть внедрена. Она служит для автоматического связывания компонентов по типу.
Однако, начиная с Spring Framework 4.3, если у класса есть единственный конструктор, то аннотация @Autowired на нем можно не ставить — Spring автоматически внедрит зависимости через этот конструктор.
Также можно использовать другие способы внедрения зависимостей:
- Через XML-конфигурацию
- Через аннотацию
@Inject(JSR-330) - Через явное создание бинов и передачу зависимостей
Таким образом, @Autowired удобна и часто используется, но не обязательна во всех случаях.