Spring整合Struts1.X的三种方法

使用SpringActionSupport 整合Structs1.X,使用 Spring DelegatingRequestProcessor覆盖StrutsRequestProcessor,StrutsAction管理委托Spring框架

--

载应:

您使用哪种技,都需要使 Spring ContextLoaderPlugin Struts ActionServlet Spring 用程序

struts-config.xml 文件尾添加插件:

<plug-in className=  "org.springframework.web.struts.ContextLoaderPlugIn">
    <set-propertyproperty= "contextConfigLocation"  

value="/WEB-INF/classes/applicationContext.xml"/>
</plug-in>

--

第一种:使用SpringActionSupport

方法: 简单快捷,但会strutsspring耦合在一起,如果要移struts用程序要重写代.

例如:

  public class ActionName extends ActionSupport {

    public ActionForward execute(    ){

    ------------------------------------------------------------------------------
    
ApplicationContext ctx= getWebApplicationContext();    

    BookService bookService = (BookService) ctx.getBean("bookService");     

    ------------------------------------------------------------------------------------------------------------- 

   }
}

--

第二种:覆盖 RequestProcessor

方法使用 org.springframework.web.struts.DelegatingRequestProcessor 来覆盖 Struts RequestProcessor 理程序,通 Spring DelegatingRequestProcessor 行整合,看下面的struts-config.xml文件的主要配置部分:

<form-beans>
 
<controller processorClass="org.springframework.web.struts.
       DelegatingRequestProcessor"/>

<plug-in className="org.springframework.web.struts.ContextLoaderPlugIn">
<set-property property="contextConfigLocation"

      value="/WEB-INF/applicationContext.xml"/>
 </plug-in>

<form-beans/>

此方法比第一种要好,但如果您使用一个不同的 RequestProcessor需要手整合 Spring DelegatingRequestProcessor,添加的代会造成维护的麻并且将来会降低您的用程序的灵活性。

--

第三种:将作管理委托 Spring

里列出struts-config.xml的主要部分:

<action  path="/searchSubmit" 
      type="org.springframework.web.struts.DelegatingActionProxy" 

      ...............
    
  </action> 

<plug-in
    className="org.springframework.web.struts.ContextLoaderPlugIn">
    <set-property property="contextConfigLocation"

       value="/WEB-INF/application.xml"/>
 </plug-in>

此方法是三种方法中最好的

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值