一、Struts2的执行流程:
用户提交一个请求,服务器接收,交给Struts2的核心过滤器进行处理,Struts2的过滤器调用Struts2的一系列处理器来处理(如:解析struts.xml配置文件,和用户提交的请求对比,如果找不到就返回404,如果找到就进行下一步处理)。直到调用对应的Action类中的excute方法执行,执行完后再进行一系列处理到核心过滤器。由核心过滤器返回给服务器,服务器对浏览器进行相应的响应。
二、使用Struts2实现一个简单的“Hello World”程序:
1、创建Web应用程序
2、为一个JavaWeb添加Strut2支持(分三步):
(1)修改web.xml文件,在web.xml文件中配置Struts2的核心Filter。
<filter>
<filter-name>Struts 2</filter-name>
<filter-class>org.apache.Struts 2.dispatcher.ng.filter.StrutsPrepareAndExcuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>Struts 2 </filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
(2)将Struts2包中lib目录下的jar文件复制到WEB-INF/lib路径下。
(3)在src目录下创建struts.xml文件。编辑此文件,代码如下:
<struts>
<package name="default" namespace="/" extend="struts-default">
<action name="hello" class="com.MyAction">
<result name="success">
/hello.jsp
</result>
</action>
</package>
</struts>
3、添加Action
在struts.xml配置文件中已经指定了Action,接下来定义此类并让其继承ActionSupport父类。
package com;
import com.opensymphony.xwork2.ActionSupport;
public class MyAction extend ActionSupport{
public String excute() throws Exception{
return SUCCESS;
}
}