- 浏览: 980095 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (223)
- JDBC技术 (29)
- Java Base (21)
- SSH框架的集合 (5)
- Javascript部分 (16)
- Sping2.5框架 (6)
- Hibernate框架 (19)
- JDBC中的数据库连接 (5)
- Ajax技术应用 (9)
- Java工具包下载 (3)
- Database (4)
- Java Web (13)
- 我的生活 (4)
- Struts2 (25)
- S2SH (1)
- Prototype (1)
- jfreeChart (5)
- JPA (7)
- JBPM (1)
- JasperReport (6)
- DWR (1)
- freeMark (2)
- IBatis (2)
- FCKeditor (2)
- POI (1)
- JQuery (6)
- JSON (1)
- JavaMail (3)
- Flex (2)
- CSS收藏夹 (1)
- 润乾报表 (2)
- 开源技术 (1)
- Android (2)
- Android_UI (1)
- Android_OS (6)
- Android_OpenLibs (3)
- Volley (1)
- JS_OpenLibs (1)
- Hessian (3)
- OS (1)
最新评论
-
damoluomu:
简单易懂
Java Web开发Session超时设置 -
di1984HIT:
学习了~~~~~~
Java Web开发Session超时设置 -
lord_is_layuping:
...
Java Web开发Session超时设置 -
15111285554:
...
Java Web开发Session超时设置 -
sfg1314:
暂停后重新下载就会报错:ClientAbortExceptio ...
Java Web 文件下载之断点续传
Struts2的拦截器:
一,拦截器的使用:
新建一个MyInterceptor拦截器类,实现com.opensymphony.xwork2.ActionInvocation接口中。
public class MyInterceptor implements Interceptor {
/**
* 由xml中可以提定Action中的参数值
*/
private String myparam;
public String getMyparam() {
return myparam;
}
public void setMyparam(String myparam) {
this.myparam = myparam;
}
public void destroy() {
System.out.println("服务器关闭执行销毁操作!");
}
public void init() {
System.out.println("服务器启动时执行初始化操作!");
}
public String intercept(ActionInvocation invocation) throws Exception {
System.out.println(myparam);
/**
* 执行之前的操作
*/
String result = invocation.invoke();
/**
* 执行之后操作
*/
return result;
}
}
二,在strust.xml中配置拦截器
` <struts>
<package name="mengya" extends="struts-default">
<!-- 拦截器在struts2中的配置 -->
<interceptors>
<interceptor name="myInterceptor"
class="com.mengya.interceptor.MyInterceptor">
<!-- param可以没有,向拦截器中的属性赋值 -->
<param name="myparam">mengya</param>
</interceptor>
<!-- 配置自己的拦截器栈 -->
<interceptor-stack name="myStack">
<interceptor-ref name="myInterceptor"></interceptor-ref>
<interceptor-ref name="defaultStack"></interceptor-ref>
</interceptor-stack>
</interceptors>
<!--
为该package指定一个默认的拦截器栈,这样就可以不用为每个action指定一拦截器栈
-->
<default-interceptor-ref name="myStack"></default-interceptor-ref>
<!--
郑重说明
当某个action中引用了某了interceptor之后就替换了原用的一个默认interceptor
即defaultStack,页defaultStack包含了很多完成sturs2一些基本功能的拦截器。
故当某个action中引用了某了interceptor之后还要引用defaultStack这个拦截器栈。
-->
<action name="login" class="com.mengya.action.LoginAction">
<result name="success">/show.jsp</result>
<result name="input">/index.jsp</result>
<!--
<interceptor-ref name="myInterceptor"></interceptor-ref>
<interceptor-ref name="defaultStack"></interceptor-ref>
-->
<!--
也可以在action中引用自己的拦截器栈
-->
<!--
<interceptor-ref name="myStack"></interceptor-ref>
-->
</action>
</package>
</struts>
三,对于Struts2中拦截器栈里的拦载器执行的顺序:
Struts2中的拦截器中的拦截器最上面的最先执行,即进入拦截器的顺序是按照拦截栈中配置的顺序,出拦截器
是先配置的后执行,即与进入拦载器的顺序相反。
四,Struts2的拦截器除了实现ActionInvocation接口外还可以继承com.opensymphony.xwork2.interceptor.AbstractInterceptor
AbstractInterceptor抽象器实现了ActionInvocation接口,空实现了init和destroy方法。因此继承了AbstractInterceptor类我们只需重写它的intercept即可。
五, Struts2的方法过滤拦截器:
1,继承com.opensymphony.xwork2.interceptor.MethodFilterInterceptor类重写doIntercept方法
2,方法过滤拦截器的配置:
<interceptors>
<!-- 声明方法过滤拦截器 -->
<interceptor name="myMethodFilterInterceptor" class="com.mengya.interceptor.MyMethodFilterInterceptor"></interceptor>
</interceptors>
<!-- 在action配置方法过滤拦截器 -->
<action name="login" class="com.mengya.action.LoginAction">
<result name="success">/show.jsp</result>
<result name="input">/index.jsp</result>
<interceptor-ref name="defaultStack"></interceptor-ref>
<interceptor-ref name="myMethodFilterInterceptor">
<!-- 不拦截的方法,即,号隔开 -->
<param name="excludeMethods">execute,test</param>
<!-- 要拦截的方法,即,号隔开 -->
<param name="includeMethods">execute</param>
</interceptor-ref>
</action>
3,说明:若某个方法同时出现在excludeMethods(不拦截的方法)和includeMethods(要拦截的方法)当中时
那么这个方法会被拦截。除它情况下excludeMethods里面的方法不拦截,includeMethods里面的方法会被拦截。
- Struts2_7.rar (3.6 MB)
- 描述: Struts2的拦截器的使用详解实例
- 下载次数: 56
发表评论
-
Struts2 + JasperReport应用二:jasperReport Web形式打印
2010-02-02 16:16 5230将jasperReport设计文件和编译文件放到webRoot ... -
Struts2 + JasperReport应用一:导PDF,Excel,HTML显示
2010-01-29 16:34 9833我用的是struts2.1.6,从struts2的自带的dem ... -
Struts2 标签使用简介
2009-12-23 19:33 2613web.xml配置如下: <fil ... -
Struts2 的OGNL使用简介
2009-12-22 13:25 2317<div align="center" ... -
POI与Struts2的使用 poi-2.5.1.jar
2009-09-25 17:43 4850一.POI 简介 Jakarta POI 是apache的子项 ... -
jFreeChart与Struts2的组合,将jFreeChart作为显示视图
2009-09-25 16:26 1453jFreeChart与Struts2的组合: 一,加 ... -
Struts2与Spring2.0的组合
2009-09-09 09:46 1013Struts2与Spring的集成: 一,加入Str ... -
Struts2的异常处理
2009-09-07 13:41 1347Struts2的异常处理: 1,定义自己的异常信息类:继承Ex ... -
Struts2.0深入学习 Strust2与Servlet API,Action多方法调用,result标签的type的类型
2009-09-06 11:08 4405Struts2深入探索: 1,package中的ab ... -
Struts2.0深入学习 命名空间,模型驱动,表单重复提交
2009-09-06 11:04 1835Struts2深入探索: 1,package中的ab ... -
Struts2国际化详解
2009-09-03 15:32 2685Struts2国际化: 1,国际 ... -
Struts2文件下载
2009-09-02 20:09 10575Struts2文件下载: Struts2文件下载对应将一个In ... -
设置Struts2文件上传的类型和大小
2009-09-02 20:09 5186设置Struts2文件上传的类型和大小: 在struts. ... -
Struts2多文件上传
2009-09-02 20:08 2424Struts2多文件上传: 在Action中配置三个属性: p ... -
Struts2文件上传详解
2009-08-31 17:27 2352Struts2文件上传: 一:请选参看Struts2_9中的S ... -
Struts2.0文件上传原理
2009-08-31 13:12 3037Struts2文件上传默认采用apache的文件上传的包,新建 ... -
Struts2的监听器的使用
2009-08-25 19:02 2498Struts2的监听器: 一,建立监听器: ... -
Struts2拦截器原理分析
2009-08-25 18:55 2338第一步:创建目标对象的接口 /** * 目标对象的接口 ... -
Struts2的检证框架详解
2009-08-25 13:00 2410Struts2的检证框架: 一,根据字段校验(为每一 ... -
Struts2的Action多个方法配置和验证
2009-08-18 20:16 4751Struts2的Action多个方法配置和验证: 1 ...
相关推荐
关于struts2 拦截器的详细的解释及其在开发中对struts2的拦截器的应用和拦截器在框架中的作用.
NULL 博文链接:https://cmexico.iteye.com/blog/621208
struts2拦截器详解,通过一个简单的例子让大家明白sturts2拦截器使用方法。
Interceptor拦截器详解和部分源码的指导,方便深入学习struts2,增加理解
主要介绍了详解Struts2拦截器机制,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
本篇文章主要介绍了java中的Struts2拦截器浅解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
新手必备,看完绝对思路清晰。醍醐灌顶啊! 一. Struts2介绍 1. Struts2简介 2. Struts2和Struts1的常见区别 ... Struts2的拦截器 13. 拒绝表单重复提交 四. OGNL表达式 五. Struts2中常用标签
主要介绍了Struts2之Action接收请求参数和拦截器详解,非常具有实用价值,需要的朋友可以参考下
利用Struts2的核心技术----拦截器实现权限控制。详细代码详解
IBMStruts2培训PPT (大全集) 主讲:刘雷 完整实用 第一章:认识体验Struts2.ppt 第二章:struts2架构剖析.ppt 第三章:struts2配置详解.ppt ...第九章:struts2拦截器.ppt + Struts2开发详解.ppt
本案例对struts2拦截器的技术做了详细的解答,希望能有用
自定义拦截器 对Action中所有方法进行输入校验 对Action指定方法进行校验 输入校验的流程 基于XML配置方式实现对action的所有方法进行校验 基于XML配置方式实现对指定action方法校验 配置国际化全局资源文件、...
拦截器是一种AOP(面向切面编程)思想的编程方式.它提供一种机制是开发者能够把相对独立的代码抽离出来,...下面这篇文章主要给大家介绍了关于Struts2拦截器Interceptor的原理与配置的相关资料,需要的朋友可以参考下。
8章 Struts之拦截器使用技巧 9章 在Struts中应用Ajax技术 10章 Struts之项目实战 3篇 持久层框架Hibernate技术 11章 Hibernate快速上手 12章 精解Hibernate之核心文件 13章 探究Hibernate之核心接口 14章 ...
4.使用默认的execAndWait拦截器 33 5. TokenInterceptor防止表单重复提交。 34 6.使用拦截器实现权限验证 35 7.拦截器中的注解 37 8.使用PreResultListener实现回调 39 六、使用标签 40 1.基础表单标签 40 2.单选...
第一章:认识体验Struts 2 第二章:struts2架构剖析 第三章:struts2配置详解 第四章:struts2中的OGNL 第五章:struts2标签库 第六章:struts2国际化 ...第九章:struts2拦截器 第十章:struts2类型转换
内容: 1、OGNL —— 数据运转的催化剂 2、Result机制,让视图更丰富 3、Struts2配置详解 4、Struts2中的Action ...7、拦截器详解 8、配置,灵活还是简单? 9、深入plugin 10、在Struts2中使用OGNL
Struts2框架简介 Struts2历史 Struts2与MVC Struts2体系介绍 Struts2体系架构 ...Struts2拦截器 默认配置文件struts-default.xml概要说明 Struts2核心配置文件Struts.xml详解 Struts2的简单开发和配置