依赖注入 抽象类

Spring配置Bean如下:

<bean id="Privilege" parent="txProxyTemplate">
<property name="target">
<bean class="com.langtoo.privilege.PrivilegeImpl">
<property name="userDao" ref="SysUserDao" />
</bean>
</property>
</bean>

txProxyTemplate 作用是继承 其他spring.xml中声明式事务的,这里关键注意的是 id ="Privilege" 和class = "com.langtoo.privilege.PrivilegeImpl"

下面采用 autowire=byName 方式来介绍经验,如果PrivilegeImpl.java 是 接口的实现类,那么就不会出错。

如果PrivilegeImpl.java 是 抽象类的实现类,编译时报异常:

Error creating bean with name 'Privilege' defined in class path resource [spring/spring-services-privilege.xml]: Invocation of init method Failed; nested exception is org.springframework.aop.framework.AopConfigException: Cannot proxy target class because cglib2 is not available. Add cglib to the class path or specify proxy interfaces.

那么解决办法是:在Classpath下添加cglib-2.1_3.jar包,我添加的是2.1_3的版本。

之后如果编译时继续报异常:

org.springframework.beans.factory.BeanCreationException:Error creating bean with name 'Privilege' defined in class path resource [spring/spring-services-privilege.xml]: Invocation of init method Failed; nested exception is java.lang.NoClassDefFoundError: org/objectweb/asm/Type

那么解决办法是:在Classpath下添加asm-1.5.3.jar包,我添加的是1.5.3的版本。

相关文章

迭代器模式(Iterator)迭代器模式(Iterator)[Cursor]意图...
高性能IO模型浅析服务器端编程经常需要构造高性能的IO模型,...
策略模式(Strategy)策略模式(Strategy)[Policy]意图:定...
访问者模式(Visitor)访问者模式(Visitor)意图:表示一个...
命令模式(Command)命令模式(Command)[Action/Transactio...
生成器模式(Builder)生成器模式(Builder)意图:将一个对...