2017-06-01 23 views
0

Ich habe den Quellcode einer Website.DAO-Klassen haben die gleiche @Qualifier

Diese Website verwendet Frühling, und ich bin verwirrt über die Injektion.

Es gibt einige DAO-Klassen, auf dieser DAO mit einem Qualifier:

@Repository("myDao") 
@Qualifier("myTransactionManager") 
public class MyCategoryDao { 

} 

Aber es gibt auch eine andere Bohne mit dem gleichen Namen des Qualifier.

Und diese Bean ist ein JpaTransactionManager.

Ich weiß nicht, warum die Bean und die DAOs den gleichen Namen/Qualifier haben.

Wäre es nicht in Konflikt mit den anderen?

+0

aber verschiedene Typen – A4L

Antwort

4

Spring prüft zuerst auf den Typ, und wenn eine Mehrdeutigkeit vorliegt, wird nur der Name in @Qualifier überprüft. In Ihrem Fall sind die Arten der beiden Bohnen unterschiedlich, also sollte das gut funktionieren.

+0

Es gibt mehr als 10 DAO-Klassen haben denselben Qualifier. Kann ich diese Qualifier auf den DAOs entfernen? Diese scheinen nutzlos zu sein. Ich habe nur Angst, dass die Qualifier etwas mit dem JpaTransactionManager zu tun haben. Vielen Dank. – Mozzan

Verwandte Themen