在抽象超类中注入spring依赖项
我需要使用spring框架在抽象超类中注入依赖项。
class A extends AbstractClassB{ private Xdao daox ;
...
public setXdao() { ... }
}
class AbstractClassB{
..
private yDao daoy;
public seyYdao() { ... }
}
我每次实例化Abstract class B时都需要传递超类依赖关系(可以在我的项目中以100多种方式将其子类化)
application.xml(Spring上下文文件)中的条目
<bean id="aClass" class="com.mypro.A" <property name="daox" ref="SomeXDaoClassRef" />
<property name="daoy" ref="SomeYDaoClassRef"/>
</bean>
我如何才能在application.xml中创建超类AbstractClassB的bean引用,以便可以在所有子类bean创建中使用它?
回答:
你可以创建一个抽象bean定义,然后“定义”该定义的子类型,例如
<bean id="b" abstract="true" class="com.mypro.AbstractClassB"> <property name="daox" ref="SomeXDaoClassRef" />
</bean>
<bean id="a" parent="b" class="com.mypro.A">
<property name="daoy" ref="SomeYDaoClassRef" />
</bean>
严格来说,的定义b甚至不需要你指定类,可以将其省略:
<bean id="b" abstract="true"> <property name="daox" ref="SomeXDaoClassRef" />
</bean>
<bean id="a" parent="b" class="com.mypro.A">
<property name="daoy" ref="SomeYDaoClassRef" />
</bean>
但是,为了清楚起见,并为你的工具提供更好的帮助你的机会,通常最好将其保留下来。
以上是 在抽象超类中注入spring依赖项 的全部内容, 来源链接: utcz.com/qa/399106.html