spring下bean继承另一个bean导致No qualifying bean of type错误。

前言

在spring下面假如你定义了自动扫描:
spring下bean继承另一个bean导致No qualifying bean of type错误。_第1张图片

然后,service长这样:
spring下bean继承另一个bean导致No qualifying bean of type错误。_第2张图片

biz继承了service:

spring下bean继承另一个bean导致No qualifying bean of type错误。_第3张图片

执行时候你会发现:

org.springframework.beans.factory.UnsatisfiedDependencyException: 
Error creating bean with name '/admin/account/Member': 
Unsatisfied dependency expressed through field 'service'; nested exception is org.springframework.beans.factory.NoUniqueBeanDefinitionException: 
No qualifying bean of type 'net.w2p.DevBase.service.account.MemberService' available:
 expected single matching bean but found 2: memberService,memberBiz

好了,这个怎么会出现呢,搞不好是spring看在继承份上连父亲节点也一并初始化了,原本就有父类了。。

解决方案:

Spring: Cannot autowire a Bean which extends another Bean

spring下bean继承另一个bean导致No qualifying bean of type错误。_第4张图片

spring下bean继承另一个bean导致No qualifying bean of type错误。_第5张图片

推荐的是:

How to extend @Service with spring
spring下bean继承另一个bean导致No qualifying bean of type错误。_第6张图片

spring下bean继承另一个bean导致No qualifying bean of type错误。_第7张图片

spring下bean继承另一个bean导致No qualifying bean of type错误。_第8张图片

spring下bean继承另一个bean导致No qualifying bean of type错误。_第9张图片

所以,加一个primary即可:

spring下bean继承另一个bean导致No qualifying bean of type错误。_第10张图片

你可能感兴趣的:(spring下bean继承另一个bean导致No qualifying bean of type错误。)