开始我的第一个struts2项目
- struts2执行流程
- struts2必须要的jar
- struts配置
-
struts2 执行流程
一,客户端通过http协议发起请求指向servlet容器
二,在扫描web.xml时会发现配置了的struts的过滤器(FilterDispatcher)
三,然后会加载struts配置 在这找到相对应的mapper
四,在mapper返回 结果后 又到 struts的过滤器(FilterDispatcher)
五,struts配置中找到相对于的返回地址 并且返回
六,在返回中相应渲染 -
struts2 必须要的jar
1. asm-3.3.jar
2. asm-commons-3.3.jar
3. asm-tree-3.3.jar
4. commons-fileupload-1.3.1.jar 关于文件下载
5. commons-io-2.2.jar 文件下载所要用的
6. commons-lang3-3.2.jar
7. commons-loggin-1.1.3.jar 日志管理
8. freemarker-2.3.22.jar 表现层框架,定义了struts2的可视组件主题
9. javassist-3.11.0.GA.jar
10. ognl-3.0.6.jar OGNL表达式语言,struts2支持该EL
11. strut2-core-2.3.24.1.jar struts2的核心库
12. xwork-core-2.3.24.1.jar webwork的核心库,自然需要它的支持
13. struts2-dojo-plugin-2.3.24.1.jar 需要struts2的标签的话加上这个 -
struts2 配置
1. web.xml 中配置 struts2的配置
2. 在action类中实现ActionSupport类
3. 在src跟目录下加上struts.xml 配置文件
1. web.xml 中配置 struts2的配置
<!-- 开启struts2的过滤器 -->
<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>
2. 在action类中实现ActionSupport类
package com.yjy.action;
import com.opensymphony.xwork2.ActionSupport;
public class TextAction extends ActionSupport{
public String text() {
System.out.println("哈哈恭喜你已经进入action");
return "text-success";
}
}
3. 在src跟目录下加上struts.xml 配置文件
<!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" >
<!--text_*:text_action中的方法名 class:对应的class method:代表第一个* -->
<action name="text_*" class="com.yjy.action.TextAction" method="{1}">
<!-- name :action返回的结果在这里查找 找到相对应的 并且到相对应的位置去(/SUCCESS.jsp) -->
<result name="text-success">/SUCCESS.jsp</result>
<result name="error">Usres.jsp</result>
</action>
</package>
</struts>