
@Qualifier
Zdarza się tak, że w aplikacji kilkukrotnie został stworzony Bean tego samego typu np. dwa różne DateTimeFormatter lub posiadasz wiele implementacji jednego interfejsu. Adnotacja @Qualifier jest adnotacją pochodzą ze spring-core. Używając jej możesz wskazać Springowi, który dokładnie Bean ma zostać wstrzyknięty. Jedyne co musisz zrobić to podać nazwę beana, który chcesz wstrzyknąć.
Poniżej znajduje się przykład użycia omawianej adnotacji @Qualifier.
@Component("fooFormatter") public class FooFormatter implements Formatter { public String format() { return "foo"; } } @Component("barFormatter") public class BarFormatter implements Formatter { public String format() { return "bar"; } } @Component public class FooService { @Autowired @Qualifier("fooFormatter") private Formatter formatter; }