2024年3月14日发(作者:)

Struts2教程1: 第一个Struts2程序

在本系列教程中我们将学习到Struts2的各种技术。在本教程中使用的工具和程序库的版本

如下:

开发工具:MyEclipse6

Web服务器:Tomcat6

Struts版本:Struts2.0.11.1

JDK版本:JDK1.5.0_12

J2EE版本:Java EE5.0

在本系列教程中Web工程的上下文路径都是struts2,如果在Web根目录有一个

文件,则访问路径如下:

localhost:8080/struts2/

由于MyEclipse6目前并不支持Struts2,所以我们需要到去下载

Struts2安装包。要想正常使用Struts2,至少需要如下五个包(可能会因为Struts2的版本

不同,包名略有差异,但包名的前半部是一样的)。

Struts2虽然在大版本号上是第二个版本,但基本上在配置和使用上已经完全颠覆了

Struts1.x的方式(当然,Struts2仍然是基于MVC模式的,也是动作驱动的,可能这是唯

一没变的东西)。Struts2实际上是在Webwork基础上构建起来的MVC框架。我们从Struts2

的源代码中可以看到,有很多都是直接使用的xwork(Webwork的核心技术)的包。既然从技

术上来说Struts2是全新的框架,那么就让我们来学习一下这个新的框架的使用方法。

如果大家使用过Struts1.x,应该对建立基于Struts1.x的Web程序的基本步骤非常清楚。

让我们先来回顾一下建立基于Struts1.x的Web程序的基本步骤。

1.

安装Struts。由于Struts的入口点是ActionServlet,所以得在中配置一下这

个Servlet。

2.

编写Action类(一般从类继承)。

3.

编写ActionForm类(一般从Form类继承),这一步

不是必须的,如果要接收客户端提交的数据,需要执行这一步。

4.

在文件中配置Action和ActionForm。

5.

如果要采集用户录入的数据,一般需要编写若干JSP页面,并通过这些JSP页面中的

form将数据提交给Action。

下面我们就按着编写struts1.x程序的这五步和struts2.x程序的编写过程一一对应,看

看它们谁更“酷”。下面我们来编写一个基于Struts2的Web程序。这个程序的功能是让

用户录入两个整数,并提交给一个Struts Action,并计算这两个数的代数和,如果代码和为

非负数,则跳转到页面,否则跳转到页面。

【第1步】 安装Struts2

这一步对于Struts1.x和Struts2都是必须的,只是安装的方法不同。Struts1的入口点是

一个Servlet,而Struts2的入口点是一个过滤器(Filter)。因此,Struts2要按过滤器的方式

配置。下面是在中配置Struts2的代码:

struts2

Dispatcher

struts2

/*