struts2与spring集成时,Action成员bean自动注入

    在struts2与spring集成时,如何让Action成员bean自动注入,但当然完全可以通过注解的方式,但是常用的还是在struts.xml文件中,配置
<constant name="struts.objectFactory" value="spring" />

    这句代码的意思就是spring 托管 意思是struts2的action由spirng负责实例化。
    struts.objectFactory这个属性用于说明Struts2的对象池创建工厂,Struts2也有自己的对象池,就像Spring那样,在配置文件中你可以引用对象池中的对象,你可以借助于Spring中的对象池,当想要得到Spring中的对象池时,申明struts.objectFactory为Spring的对象池构建工厂。当指定struts.objectFactory为spring时,struts2框架就会把bean转发给spring来创建,装配,注入。但是bean创建完成之后,还是由struts容器来管理其生命周期。
    在struts.xml中的代码如下:<constant name="struts.objectFactory" value="spring" />
然后再在applicationContext.xml配置各个bean即可。

<!--      省份业务操service bean-->
   <bean id="provinceService" class="com.deppon.citycontrol.service.impl.ProvinceService">
      <property name="provinceDao">
      <ref bean="provinceDao"/>
      </property>
   </bean>
   
   <bean id="provinceDao" class="com.deppon.citycontrol.dao.impl.ProvinceDao">
   <property name="sessionFactory" >
   <ref bean="sessionFactory"/>
   </property>
   </bean>
  	
   <bean id="queryAllPro" class="com.deppon.citycontrol.action.ProvinceAction">
   <property name="provinceService">
   <ref bean="provinceService"/>
   </property>
   </bean>

你可能感兴趣的:(spring,struts)