第一种问题:接口A有两个以上实现类,不能使用@Autowired注解,要加Qulifier注解
如@Qulifier(name="xxx"),或者直接替换为Resource(name="xxx")
第二种问题:可能是引入类有含参构造,没有无参构造,再加一个无参构造函数
第三种问题:实现类加了@Service和@Component两个注解,把@Component去掉
@service引用了@component注解,也就是component注解实现的功能@service都能实现,而@service是对@component进一步拓展,被@service注解标注的类会被spring认定是业务逻辑层,里面有spring对业务逻辑层管理的一对逻辑
-
@Service用于标注业务层组件
-
@Controller用于标注控制层组件(如struts中的action)
-
@Repository用于标注数据访问组件,即DAO组件
-
@Component泛指组件,当组件不好归类的时候,我们可以使用这个注解进行标注