Używam @ComponentScan
i @Component
do definiowania moich fasoli szparagów. Chciałbym zadeklarować jedną z tych fasoli jako autowire-candidate=false
.Jak zadeklarować moduł sprężynowy autowire-candidate = "false" podczas korzystania z adnotacji?
Można to zrobić za pomocą tego atrybutu w języku xml. Czy nie ma odpowiednika w adnotacjach?
Powodem tego chcę, ponieważ mam 2 implementacje tego samego interfejsu i nie chcę używać @Qualifier
.
EDYCJA: Korzystanie z @Primary jest prawidłowym obejściem, ale kandydat na kandydata na autowira wydaje mi się przydatną funkcją z własną semantyką.
Dzięki
Napisz adnotacje do preferowanego z '@ Primary'. W ten sposób nie musisz używać '@ Qualifier'. –
Dzięki za komentarz. Tak, to jest jeden ze sposobów, które udało mi się przezwyciężyć, ale zastanawiam się, jak to możliwe, że w adnotacjach nie ma odpowiednika kandydata na autowira. –
Wygląda na to, że Spring odrzucił koncepcję 'autowire-candidate = false' i nie jest już obsługiwana. Nie ma odpowiednika z adnotacjami, więc '@ Primary' jest tylko sposobem, jak zauważyłeś. –