将Struts应用迁移到Struts 2(一)

时间:2008-01-08 来源:IT在中国 编辑:蓝天 作者:蓝天 [ ]
  大多数人都会熟悉Struts, 无论是从项目实战中获得的经验还是从书中了解到的知识。在这一系列文章里,我们将通过一个由Struts迁移到Struts 2的简单应用例子向大家展现Struts 2的所有特征

配置框架

首先最重要的是,通过配置web.xml文件让框架能在Servlet容器里运行。

下面这个就是大家都熟悉的Struts在web.xml里的配置方法:

    
action
org.apache.struts.action.ActionServlet

config
/WEB-INF/struts-config.xml

2



action
*.do

    在Struts 2中,配置有少许改变,最明显的是分发器(dispatcher)已由Servlet转为Servlet Filter, 其配置和Servlet一样简单,如下:

    
webwork

org.apache.struts.action2.dispatcher.FilterDispatcher



webwork
/*

    和Servlet配置一样,Filter配置中定义了Filter的名称(作为引用)和类名。Filter Mapping通过URI和名称匹配来调用相应的Filter。默认情况下,扩展名为“.action”,这是在default.properties文件(在Struts 2 JAR文件里)的“struts.action.extension”属性定义的。

工具箱:“default.properties”是默认配置选项定义文件。你可以通过在classpath中包含一个叫“struts.properties”的文件,设置不同的属性值,来覆盖默认配置的值,实现自己的配置。

    对于Struts来说, Servlet配置提供了一个用于定义文件名的init-param tag来配置Struts,而Struts 2没有这样的配置参数,取而代之的是在classpath下的默认配置文件“struts.xml”。

工具箱/提示:因为Struts Actions(扩展名“.do”)和Struts 2 Actions(扩展名“.action”)两者的扩展名命名空间不一样,所以Struts和Struts 2可以在同一个Web应用系统中无碍地共存。所以这就为迁移提供了很好的条件,加入适当的配置,新功能的开发都用Struts 2。保持原有的遗留功能,如果时间和资源允许的情况下再逐步迁移。另一种方法是,只把Struts 2的扩展名改为“.do”,这样就可使得以前的JSP页面可重用。

上一页 [1] [2] [3] [4] [5] 下一页


访问() 相关评论() 打印资源 返回顶部 加入收藏

最新评论