在spring 中使用注解,常使用@Autowired, 默認是根據類型Type來自動注入的。但有些特殊情況,對同一個接口,可能會有幾種不同的實現類,而默認只會采取其中一種的情況下 @Primary 的作用就出來了。下面是個簡單的使用例子。有如下一個接口 ...
Primary 注解 剛看到這個,還以為是持久層的注解呢,以為和 Id差不多,一查才知道,這兩個風馬牛不相及,反倒和 Qualifier以及 Resource有點像了,但是相比而言,后面兩個更加的靈活。 可以看這兩個博客 博客一 博客二 我覺得第一篇博客講的不太對,結合第二篇應該就能理解第一篇中的 而 Qualifier這個注解則指定某個bean有沒有資格進行注入 這句話了。 當一個接口,有幾種 ...
2017-07-11 23:06 0 1467 推薦指數:
在spring 中使用注解,常使用@Autowired, 默認是根據類型Type來自動注入的。但有些特殊情況,對同一個接口,可能會有幾種不同的實現類,而默認只會采取其中一種的情況下 @Primary 的作用就出來了。下面是個簡單的使用例子。有如下一個接口 ...
當一個接口有多個不同實現類時,使用注解@Autowired時會報 org.springframework.beans.factory.NoUniqueBeanDefinitionException: No qualifying bean of type [xxxx] is defined ...
1.問題 當一個接口有2個不同實現時,使用@Autowired注解時會報org.springframework.beans.factory.NoUniqueBeanDefinitionException異常信息 2.方案1-@Qualifier 使用 ...
當一個接口存在多個實現的時候會報org.springframework.beans.factory.NoUniqueBeanDefinitionException類似的異常信息,項目中碰到引用別人事先寫好的框架,但是對於其中個別實現並不是很需要,因此可以通過使用@Primary注解進行處理 ...
當一個接口有兩個實現類時,並兩個實現類都被 Spring 管理,則需要對某個類進行 @Primary 注解,表示優先選擇此實現類。 否則會拋出 異常 org.springframework.beans.factory.NoUniqueBeanDefinitionException ...
最近翻看一個新的項目,發現一個有趣的一點,就是這個項目的javabean並沒有寫對應屬性的get、set、equals、toStirg等方法,卻可以為屬性賦值。 仔細看發現有一個@Data注解。感覺有點意思就研究一下。這個注解是屬於Lombok包的。 Lombok優點: Lombok可以最大 ...
簡單的說,就是當Spring容器掃描到某個接口的多個 bean 時,如果某個bean上加了@Primary 注解 ,則這個bean會被優先選用,如下面的例子: 因為 HibernateFooRepository 上面有注解@Primary,所以它將優先 ...
@Primary:在眾多相同的Bean中,優先使用@Primary注解的Bean。 這個和@Qualifier有點區別,@Qualifier指的是使用哪個Bean進行注入。 參考: http://blog.csdn.net/asdfsadfasdfsa/article/details ...