Spring集成 Struts2

邮差的信 提交于 2019-11-29 00:45:07

Spring如何整合struts2?
  1) 整合目标?

    使IOC容器来管理Struts2的Action!

  2) 如何进行整合?

         ① 正常加入Struts2
         ② 在Spring的IOC容器中配置Struts2的Action
   特别注意:在IOC容器中配置Struts2的Action时,需要配置scope属性,且必须指定为prototype!

<bean id="personAction" class="com.lty.spring.struts2.action.PersonAction" scope="prototype">
       <property name="personService" ref="personService"></property>
</bean>

         ③ 配置Struts2的配置文件:action节点的class属性需要指向IOC容器中该bean的id

<action name="person-save" class="personAction">
    <result>/success.jsp</result>
</action>

        ④ 加入struts2-spring-plugin-2.3.15.3.jar

     3)整合原理

         通过添加struts2-spring-plugin-2.3.15.3.jar以后,Struts2会先从IOC容器中获取Action的实例

if (appContext.containsBean(beanName)) {
    o = appContext.getBean(beanName);
} else {
    Class beanClazz = getClassInstance(beanName);
    o = buildBean(beanClazz, extraContext);
}

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!