Это не byName, byType, конструктор и автоопределение. Режим по умолчанию - no, т.е. по умолчанию автоматическое подключение отключено в традиционной конфигурации на основе XML.
Использование аннотации @Autowired-
1) @Autowired на свойства:
Когда @Autowired используется в свойствах, это эквивалентно автоматическому соединению byType в файле конфигурации.
2) @Autowired на установщиков свойства:
Когда @Autowired используется на установщиках, это также эквивалентно автоматическому соединению byType в файле конфигурации.
3) @Autowired для конструкторов:
Когда @Autowired используется в конструкторе компонента, он также эквивалентен автоматическому соединению конструктором в файле конфигурации.
Использовать @Qualifier для конфликта в разрешении зависимостей
Как мы узнали, если мы используем автопроводку в режиме byType, и зависимости ищутся для типов классов свойств. Если такой тип не найден, выдается ошибка. Но что делать, если есть два или более bean-компонента для одного и того же типа класса.
В этом случае Spring не сможет выбрать правильный боб для добавления в свойство, и вам нужно будет помочь контейнеру, используя квалификаторы.
Чтобы разрешить конкретный компонент с помощью квалификатора, нам нужно использовать аннотацию @Qualifier вместе с аннотацией @Autowired и передать имя компонента в параметре аннотации.