咱們在項目中常常會碰見這樣一個問題,如一個接口它有兩個或以上的實現類,那麼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;