Service层无法注入

由于我并没由按照一个一个实现类的方式来编写Service层

在Spring中直接注入Service时会出现异常

错误信息:

    org.springframework.beans.factory.BeanNotOfRequiredTypeException: Bean named 'aisleService' must be of type [com.gdie.whlocation.service.impl.AisleService], but was actually of type [$Proxy38]

这个问题出现的原因:一般在使用annotation的方式注入spring的bean 出现的,具体是由于spring采用代理的机制导致的

首先注入分两种方式

1,使用类注入

2,使用接口注入

使用类注入的话,必须使用cglib代理

回到原来的service注入问题,解决方法

1.使用aop配置:
    <aop:config proxy-target-class="false"> </aop:config>

2. aspectj配置:
    <aop:aspectj-autoproxy proxy-target-class="true"/>

3. 事务annotation配置:
    <tx:annotation-driven transaction-manager="transactionManager" proxy-target-class="true"/>  

使用任何一种配置都行,重点在于配置 proxy-target-class="true"

01-17 21:39
查看更多