拦截器

1.自定义拦截器类,必须继承AbstractInterceptor类(抽象类)

重写public String intercept (ActionInvocation arg0)

2.在Struts.xml文件中创建拦截器对象,格式:

<package>

<interceptors>

<interceptor name=”拦截器名” class=”拦截器类全名”>

[<param name=”成员变量名” >值</~~>]

</~~>

</~~>

</~~>

3.为Action注册拦截器 格式:

<action>

<interceptor-ref name=”拦截器名”>

[<param name=”成员变量”>]       作用: 成员变量赋值

</~~>

</~~>

注意事项 1 当引入自定义拦截器时会导致默认拦截器失效,此时需重新引入默认拦截器栈

格式:<inyrtceptor-ref name=”defaultStack”>

2 拦截器的注册顺序即为拦截器的执行时顺序。

3 在拦截器中参数arg0可获得

Action Context ac = arg.getInvocationContext();

Map Sesstion = ac.getSession();

拦截器栈的使用

步骤

1新建拦截器栈  格式

<interceptors>

<interceptor …/>

<interceptor-stack name=”栈名”>

< interceptor-ref name=”拦截器名/>

< /interceptor-stack>

< /interceptor >

2 注册拦截器栈  格式

<action …>

< interceptor-ref name=”栈名”/>

</action>

过滤性拦截

a.新建拦截器类 继承AbstractInterceptor类   重写doInterceptor(方法)

b.新建或注册拦截器时

格式:

<interceptor interceptor-ref>

<param name=”excludeMethods”>不进行拦截的Action方法名[名]

</param>

<param name=”includeMethods”>excute,abc,aa,cc,bb</param>

</interceptor interceptor-ref>

struts2学习之基础笔记4的更多相关文章

  1. struts2学习之基础笔记6

    第十一章 Struts 2的国际化 1 国际化简介 http协议,request_locale值 Locale类àà封装类request_locale值       ResourcesBandleàà ...

  2. struts2学习之基础笔记2

    6.5 Struts2 的基本配置 1web.xml 作用:加载核心过滤器 格式: <filter> ``````` </filter> <filter-mapping& ...

  3. struts2学习之基础笔记1

    第6章 Strusts 2框架 1  引出 Web App  àà MVC  àà View 视图(jsp,html,JS) | C(Servlet)Filter,Listneer | M(数据bea ...

  4. struts2学习之基础笔记8

    文件的上传和下载 上传 步骤1:在文件上传表单中设置method和enctype属性值 格式:<s:form method=”post” enctype =”multipart/ form.da ...

  5. struts2学习之基础笔记7

    第十二章 Struts 2的标记库 1 OGNL简介 Object-Grephic Navigtor Language 图对象导航语言 作用:图对象导航语言是Struts 2标记库中为其相应标记属性进 ...

  6. struts2学习之基础笔记5

    第十章 Struts 2的输入校验 1 Struts 2 输入校验原理 a . 分类 validate()方法校验 b . validation框架校验 2 valibate()方法校验实现 步骤  ...

  7. struts2学习之基础笔记3

    第8章Struts 2类型转换 使用类型转换器 自定义类型转换器 步骤:1. Struts 2 构建流程 2.自定义类型转换器类(继承 DefaultTypeConverter /StrutsType ...

  8. 学习webpack基础笔记01

    学习webpack基础笔记 1.webpack搭建环境最重要的就是如何使用loader和plugins,使用yarn/npm安装插件.预处理器,正确的配置好去使用 2.从0配置webpack - 1. ...

  9. bash shell学习-正则表达式基础 (笔记)

    A gentleman is open-minded and optimistic; a small person is narrow-minded and pessimistic. "君子 ...

随机推荐

  1. mysql5.5和5.6版本更新内容

    mysql 5.5,5.6 比5.1改进地方: 1,5.5默认存储引擎为innodb2,5.5增加cpu多核处理能力:innodb_read_io_threads innodb_write_io_th ...

  2. css—各浏览器下的背景色渐变

    .linear{ width:100%; height:600px; FILTER: progid:DXImageTransform.Microsoft.Gradient(gradientType=0 ...

  3. yii处理cookie

    /** * 设置用户cookie会话 */ public function setCookie() { //set loginName $cookies = Yii::app()->reques ...

  4. ArrayList集合如何存储基本数据类型

    ArrayList对象不能存储基本类型,只能存储引用类型的数据.类似 <int> 不能写,但是存储基本数据类型对应的包装类型是可以的. 所以,想要存储基本类型数据, <> 中的 ...

  5. Spring cloud公共模块

    1.0公共的模块是公共的工具包以及实体等 2.添加架包 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xs ...

  6. websocket 进阶!netty框架实现websocket达到高并发

    引言: 在前面两篇文章中,我们对原生websocket进行了了解,且用demo来简单的讲解了其用法.但是在实际项目中,那样的用法是不可取的,理由是tomcat对高并发的支持不怎么好,特别是tomcat ...

  7. Pyhton学习——Day1

    1.什么是机器码?什么是字节码?机器码(machine code),学名机器语言指令,有时也被称为原生码(Native Code),是电脑的CPU可直接解读的数据. 通常意义上来理解的话,机器码就是计 ...

  8. javascript 富文本 注意事项

    富文本编辑器 div内嵌iframe iframe body contenteditable属性 true 整个iframe 即为可编辑框,创建时注意事项: 1.编辑 焦点问题 弹出新控件时为控件设置 ...

  9. POJ2406A- Power Strings

    Given two strings a and b we define a*b to be their concatenation. For example, if a = "abc&quo ...

  10. BZOJ 4367 [IOI2014]holiday (决策单调DP+主席树+分治)

    题目大意:略 题目传送门 神题,不写长题解简直是浪费了这道题 贪心 考虑从0节点出发的情况,显然一直往前走不回头才是最优策略 如果起点是在中间某个节点$s$,容易想到,如果既要游览$s$左边的某些景点 ...