首页 > 代码库 > Spring AOP基于注解的“零配置”方式---org.springframework.beans.factory.BeanNotOfRequiredTypeException
Spring AOP基于注解的“零配置”方式---org.springframework.beans.factory.BeanNotOfRequiredTypeException
具体异常信息如下:
1 Exception in thread "main" org.springframework.beans.factory.BeanNotOfRequiredTypeException: Bean named ‘hello‘ must be of type [com.hyq.chapter08_04_3.HelloImpl], but was actually of type [com.sun.proxy.$Proxy13]2 at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:376)3 at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:200)4 at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:979)5 at com.hyq.chapter08_04_3.AspectTest.main(AspectTest.java:10)
我在网上搜了一大堆解决方法都不管用,后来发现只要在spring的配置文件bean.xml中的<aop:aspectj-autoproxy/>加上一个属性 proxy-target-class="true",即为:
<aop:aspectj-autoproxy proxy-target-class="true"/>
网上查了一下proxy-target-class="true"的相关作用如下:
- proxy-target-class属性值决定是基于接口的还是基于类的代理被创建。
- 如果proxy-target-class 属性值被设置为true,那么基于类的代理将起作用(这时需要cglib库)。
- 如果proxy-target-class属值被设置为false或者这个属性被省略,那么标准的JDK 基于接口的代理将起作用。
Spring AOP基于注解的“零配置”方式---org.springframework.beans.factory.BeanNotOfRequiredTypeException
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。