一個接口多個實現類處理方式

咱們在項目中常常會碰見這樣一個問題,如一個接口它有兩個或以上的實現類,那麼spring會注入哪個呢?java

其實遇到這種狀況須要作特殊標識的,否則spring會報錯誤提示!spring

解決方法:

1.使用@Resource註解code

@Service(value="imgDataDao")
public class ImageDataDao extends DataDao{
}
@Resource(name="imgDataDao")                 
private DataDao xx;

@Resource的做用至關於@Autowired,只不過@Autowired按byType自動注入,而@Resource默認按 byName自動注入罷了。 接口

 

2. 或者使用@Qualifier註解class

@Autowired
@Qualifier("imgDataDao")
private DataDao yy;
相關文章
相關標籤/搜索