springAOP出现的问题
- BeanCreationException,所有bean都无法创建
原因:缺失jar包
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>1.8.7</version>
</dependency>
- BeanNotOfRequiredTypeException,Bean类型异常
原因:spring代理机制造成,默认使用java动态代理(需要代理对象必须是个接口,而接口必须有一个或以上的实现类),我们被代理的对象是UserServiceImpl,所以报错。
解决方法:
一.从代理机制中入手:将spring代理设置为cglib代理
<aop:config proxy-target-class="true">
这种方式好像不推荐!!!
二.从被代理对象入手
好像不行,spring注入的是实现类,而java动态代理需要的是接口,如果spring注入接口,好像不太行,不明白,以后再看看。