JSP的那些事儿(7)----Struts 2.1.6的配置和使用

来源:互联网 发布:v5团队淘宝兼职平台 编辑:程序博客网 时间:2024/05/21 17:28

本文不打算介绍什么是Struts,也不打算介绍Struts究竟有什么神奇所在,仅仅讨论如何配置Struts和使用Struts。

学习资料:http://struts.apache.org/2.1.6/index.html

如果用户需要了解Struts的背景知识可以到官网去看用户手册;如果用户需要开始使用Struts可以到官网下载;

在这里也跟大家提个醒,外面的文章写得在厉害,官网的东西是最直接的,我写的东西同样可以质疑,因为这仅仅是我对Struts的认识。

本文的起点在于你已经下载到了Struts的完整版本。

地址为:http://apache.etoak.com/struts/binaries/struts-2.1.6-all.zip

>>开始我的Struts之旅了

1、我的环境介绍

Tomcat环境的配置,在这里就不重复了。我以前写过一篇

【JDK1.6+Tomcat6.0配置开发JSP】http://blog.csdn.net/rocket5725/archive/2009/03/17/3999180.aspx

了解我的环境很重要,因为只有了解我的环境,您才可以看到配置文件给出的信息,以及在地址栏输入的文字。

浏览地址:http://localhost:8080/app保证网站是正常浏览的,本项目的名称是app,这一点跟你的肯定不同。在后面的配置过程会出现几处app的出现,你直接替换成你的项目即可。当然明白原理是最重要的。模仿只是第一步。

你的第一步首先是在地址栏输入:http://localhost:8080/YourApp可以正常显示某个简单的页面。

2、准备好Struts2安装包以及依赖包

把下载到的struts-2.1.6解压,然后在lib中找到以下的包文件:struts2-core-2.0.11.1.jar、xwork-2.0.4.jar、commons-logging-1.0.4.jar、freemarker-2.3.8.jar、ognl-2.6.11.jar并将这些包拷贝到app/WEB_INF/lib下面。

3、安装Struts

这一步对于Struts1.x和Struts2都是必须的,只是安装的方法不同。Struts1的入口点是一个Servlet,而Struts2的入口点是一个过滤器(Filter)。因此,Struts2要按过滤器的方式配置。下面是在web.xml中<web-app>节点下配置Struts2,代码如下:

4、编写Action类

这一步和Struts1.x也必须进行。只是Struts1.x中的动作类必须从Action类中继承,而Struts2.x的动作类需要从com.opensymphony.xwork2.ActionSupport类继承。下面是计算两个整数代码和的Action类,代码如下:

从上面的代码可以看出,动作类的一个特征就是要覆盖execute方法,只是Struts2的execute方法没有参数了,而Struts1.x的execute方法有四个参数。而且execute方法的返回值也不同的。Struts2只返回一个String,用于表述执行结果(就是一个标志)。上面代码的其他部分将在下面讲解。

5、编写ActionForm类

在本例中当然需要使用ActionForm了。在Struts1.x中,必须要单独建立一个ActionForm类(或是定义一个动作Form),而在Struts2中ActionForm和Action已经二合一了。从第二步的代码可以看出,后面的部分就是应该写在ActionForm类中的内容。所以在第2步,本例的ActionForm类已经编写完成(就是Action类的后半部分)。

6、配置Action类

这一步struts1.x和struts2.x都是必须的,只是在struts1.x中的配置文件一般叫struts-config.xml(当然也可以是其他的文件名),而且一般放到WEB-INF目录中。而在struts2.x中的配置文件一般为struts.xml,在app/WEB-INF/classes目录中新建struts.xml文件。下面是在struts.xml中配置动作类的代码:

7、编写用户录入接口:新建JSP页面

(1)主页面(sum.jsp),在根目录下新建sum.jsp页面,代码如下:

(2)新建positive.jsp页面

(3)新建nagetive.jsp页面

这两个jsp页面的实现代码基本一样,只使用了一个<s:property>标签来显示Action类中的sum属性值。

重启Tomcat,在地址栏键入http://localhost:8080/app/sum.jsp即可看到实现struts的效果

实现效果图一:sum.jsp页面

>>

 

原创粉丝点击