步骤1:安装Struts2
Struts2的入口点是一个过滤器(Filter),Struts1的入口是一个Servlet。
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
步骤2:编写Action类
Struts2.x中的动作类需要从com.opensymphony.xwork2.ActionSupport类继承,Struts1.x中的动作类必须从Action类中继承。
动作类的一个特征就是要覆盖execute()方法,只是Struts2的execute方法没有参数,返回值只返回一个String,用于表述执行结果(就是一个标识),而Struts1的execute方法有四个参数。
步骤3:编写ActionForm类
Struts2中ActionForm和Action已经二合一了,在Struts1中必须要单独建立一个ActionForm类(或者定义一个动作Form)。
步骤4:配置Action类
Struts2中的配置文件一般为struts.xml,放在WEB-INF/classes目录中,struts1中的配置文件一般叫struts-config.xml,而且一般放在WEB-INF目录中。
<struts>
<package name="struts2" namespace="/mystruts" extends="struts-default">
<action name="sum" class="action.FirstAction">
<result name="positive">/positive.jsp</result>
<result name="negative">/negative.jsp</result>
</action>
</package>
</struts>
在<struts>标签中可以有多个<package>,第一个<package>可以指定一个Servlet访问路径(不包括动作名),如"/mystruts"。extends属性继承一个默认的配置文件"struts-default",一般都继承于它,<action>标签中的name属性表示动作名,class表示动作类名。<result>标签的name实际上就是execute方法返回的字符串,在<struts>中可以有多个<package>,在<package>中可以有多个<action>。我们可以用如下的URL来访问这个动作:http://localhost:8080/struts2/mystruts/sum.action
步骤5:编写用户录入接口(JSP页面)
1.主界面
在Web根目录建立一个jsp
<%@page language="java" import="java.util.*" pageEncoding="GBK"%>
<%@taglib prefix="s" uri="/struts-tags"%>