<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">原来Struts2和srtuts1完全是两码事,两个几乎就不是一个东西,与其还不如说struts2是webwork的,相比struts1,确实有难度,但是从技术的层面上讲,struts2的技术明显比struts1的技术含量高,而且,在代码维护方面做的更开优秀,我这里不再说理论,只讲过程,因为综合以往的对于框架的学习,其学习的方法就是学学会使用,然后再去试着理解。</span>
下面简单的说一下Struts最为简单的搭建流程:
1:首先创建WEB项目,最后javeee5或以上的标准。
2:在web-inf/lib文件夹里面引入Struts的jar包,自动的添加路径
3:在web.xml文件里面使用过滤器加载struts
4:在src目录下面添加struts.xml文件。
5:在src目录下面添加控制器,该类继承ActionSupport类,并且要重写execute方法,返回字符串就是对应的视图文件
6:在struts.xml文件里面添加包空间,action属性,以及视图的相关属性。
这样到这里就完成了一个简单Struts加载的应用,只不过只能简单的输出helloworld而已,但是这一步是非常重要的,也是完成后面工作的重要步骤。
下面是一份简单的示例程序:
web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
<display-name>StrutsTestX_2</display-name>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
</web-app>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
<package name="default" namespace="/" extends="struts-default">
<action name="test" class="com.xuning.test.TestAction">
<result name="test">/test.jsp</result>
</action>
</package>
</struts>
Action控制器:
package com.xuning.test;
import com.opensymphony.xwork2.ActionSupport;
public class TestAction extends ActionSupport {
@Override
public String execute() throws Exception {
// TODO Auto-generated method stub
return "test";
}
}