一、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; } }