对于MVC框架系统,从底层bean--dao--service--action。在各层建立common父类 是很有必要的。但是有时候会发现
子类继承common父类后无法用父类中的方法和变量。需要注意配置问题。
如:public class LoginServiceImpl extends BaseProcessor implements ILoginService{}
public abstract class BaseProcessor {
protected ICommDAO commDAO ;
......
}
同时在配置文件中也要体现这继承关系:
<bean id="loginService" parent="proxyTemplate">
<property name="target">
<bean class="com.cdm.service.impl.LoginServiceImpl" parent="baseManager">
<property name="usersDAO">
<ref bean="UsersDAOProxy" />
</property>
</bean>
</property>
</bean>
配置文件中通过parent="baseManager"体现继承关系。
"baseManager"是配置BaseProcessor 的bean:
<bean id="baseManager" class="com.cdm.action.framework.common.BaseProcessor" abstract="true">
<property name="commDAO">
<ref bean="CommDAOProxy"/>
</property>
</bean>
如果不用parent="baseManager",则在LoginServiceImpl用到commdao则会报commdao 为null的错误。
子类继承common父类后无法用父类中的方法和变量。需要注意配置问题。
如:public class LoginServiceImpl extends BaseProcessor implements ILoginService{}
public abstract class BaseProcessor {
protected ICommDAO commDAO ;
......
}
同时在配置文件中也要体现这继承关系:
<bean id="loginService" parent="proxyTemplate">
<property name="target">
<bean class="com.cdm.service.impl.LoginServiceImpl" parent="baseManager">
<property name="usersDAO">
<ref bean="UsersDAOProxy" />
</property>
</bean>
</property>
</bean>
配置文件中通过parent="baseManager"体现继承关系。
"baseManager"是配置BaseProcessor 的bean:
<bean id="baseManager" class="com.cdm.action.framework.common.BaseProcessor" abstract="true">
<property name="commDAO">
<ref bean="CommDAOProxy"/>
</property>
</bean>
如果不用parent="baseManager",则在LoginServiceImpl用到commdao则会报commdao 为null的错误。