`

Struts 2自带拦截器 interceptor

 
阅读更多

配置和使用拦截器

在struts-default.xml中已经配置了以上的拦截器。如果您想要使用上述拦截器,只需要在应用程序struts.xml文件中通过“<include file="struts-default.xml" />”将struts-default.xml文件包含进来,并继承其中的struts-default包(package),最后在定义Action时,使用“<interceptor-ref name="xx" />”引用拦截器或拦截器栈(interceptor stack)。

 

注:一旦您继承了struts-default包(package),所有Action都会调用拦截器栈 ——defaultStack。当然,在Action配置中加入“<interceptor-ref name="xx" />”可以覆盖defaultStack。

 

Struts 2已经为您提供丰富多样的,功能齐全的拦截器实现

拦截器

名字

说明

Alias Interceptor

alias

在不同请求之间将请求参数在不同名字件转换,请求内容不变

Chaining Interceptor

chain

让前一个Action的属性可以被后一个Action访问,现在和chain类型的result<result type=”chain”>)结合使用。

Checkbox Interceptor

checkbox

添加了checkbox自动处理代码,将没有选中的checkbox的内容设定为false,而html默认情况下不提交没有选中的checkbox

Cookies Interceptor

cookies

使用配置的name,value来是指cookies

Conversion Error Interceptor

conversionError

将错误从ActionContext中添加到Action的属性字段中。

Create Session Interceptor

createSession

自动的创建HttpSession,用来为需要使用到HttpSession的拦截器服务。

Debugging Interceptor

debugging

提供不同的调试用的页面来展现内部的数据状况。

Execute and Wait Interceptor

execAndWait

在后台执行Action,同时将用户带到一个中间的等待页面。

Exception Interceptor

exception

将异常定位到一个画面

File Upload Interceptor

fileUpload

提供文件上传功能

I18n Interceptor

i18n

记录用户选择的locale

Logger Interceptor

logger

输出Action的名字

Message Store Interceptor

store

存储或者访问实现ValidationAware接口的Action类出现的消息,错误,字段错误等。

Model Driven Interceptor

model-driven

如果一个类实现了ModelDriven,将getModel得到的结果放在Value Stack中。

Scoped Model Driven

scoped-model-driven

如果一个Action实现了ScopedModelDriven,则这个拦截器会从相应的Scope中取出model调用ActionsetModel方法将其放入Action内部。

Parameters Interceptor

params

将请求中的参数设置到Action中去。

Prepare Interceptor

prepare

如果Acton实现了Preparable,则该拦截器调用Action类的prepare方法。

Scope Interceptor

scope

Action状态存入sessionapplication的简单方法。

Servlet Config Interceptor

servletConfig

提供访问HttpServletRequestHttpServletResponse的方法,以Map的方式访问。

Static Parameters Interceptor

staticParams

struts.xml文件中将<action>中的<param>中的内容设置到对应的Action中。

Roles Interceptor

roles

确定用户是否具有JAAS指定的Role,否则不予执行。

Timer Interceptor

timer

输出Action执行的时间

Token Interceptor

token

通过Token来避免双击

Token Session Interceptor

tokenSession

Token Interceptor一样,不过双击的时候把请求的数据存储在Session

Validation Interceptor

validation

使用action-validation.xml文件中定义的内容校验提交的数据。

Workflow Interceptor

workflow

调用Actionvalidate方法,一旦有错误返回,重新定位到INPUT画面

Parameter Filter Interceptor

N/A

从参数列表中删除不必要的参数

Profiling Interceptor

profiling

通过参数激活profile

 

分享到:
评论

相关推荐

    struts2官方自带的四个例子

    拦截器是Struts2的核心组件之一,它们在Action执行前后执行自定义逻辑。Interceptor示例展示了如何创建和配置拦截器,如日志记录、权限检查等。通过拦截器,开发者可以实现跨Action的功能,如事务管理、性能监控等...

    Java实训教程 Java软件开发实战 Java开发框架介绍 struts2_9_拦截器 共32页.pptx

    **知识点3:Struts2自带拦截器列表** | 序号 | 拦截器名称 | 功能描述 | |------|--------------|----------------------------------------------------------------------------------------------| | 1 | alias ...

    struts2所有jar以及自带实例项目

    3. **Interceptor(拦截器)**:拦截器是Struts2的重要特性,它们允许在Action调用前后插入额外的功能,如日志记录、权限检查、事务管理等。开发者可以自定义拦截器,并通过配置文件决定拦截器的执行顺序。 4. **...

    自定义拦截器实现防止重复提交

    自定义拦截器需要继承`org.apache.struts2.interceptor.AbstractInterceptor`类,并覆盖`intercept()`方法。下面是一个简单的自定义拦截器示例: ```java public class TokenAtionInterceptor extends ...

    Struts2入门教程(全新完整版)

    7.开启struts2自带的开发模式常量 6 8.vo传参模式 7 9.ModerDriven传参模式(不建议采用) 7 10.为什么要使用struts2代替struts1.x 7 二、struts.xml配置及例程 7 1.配置文件的优先级 7 2.配置形式 8 3.package配置...

    struts2项目性能调优三步曲.txt

    拦截器是Struts2框架中用于处理请求前后的关键组件,但过度使用会显著拖慢性能。优化策略包括: 1. **去除不必要的拦截器**:审查`struts.xml`中的拦截器配置,移除不使用的拦截器,减少请求处理流程的复杂度。 ...

    Struts2.docx

    Struts2的核心在于它作为一个servlet,它使用拦截器(Interceptor)机制来处理HTTP请求,实现了业务逻辑与Servlet API的解耦。 在Struts2的工作流程中,客户端发起的请求首先会经过一系列过滤器,其中包括...

    struts2实例和详细介绍

    - **struts-default.xml**:提供Struts2的一些默认配置,包括核心bean和拦截器,会自动包含在struts.xml中。 - **其他配置文件**:如velocity.properties和struts-plugin.xml,分别与Velocity模板和Struts2插件...

    struts2.0常用功能练习

    3. **拦截器(Interceptor)**:拦截器是Struts2的一个重要特性,它们按照预定义的顺序在Action调用前后执行,可以用来进行日志记录、权限检查、数据验证等操作。例如,`ValidationInterceptor`用于字段验证,`...

    struts2 spring hibernate 整合项目 适合毕业设计

    Struts2通过拦截器(Interceptor)机制提供丰富的功能,如异常处理、国际化等,使得开发者能够更好地组织和控制应用程序的行为。 2. **Spring框架**:Spring是一个全面的后端开发框架,提供了依赖注入(DI)和面向...

    Java的Struts框架中Action的编写与拦截器的使用方法

    例如,如果你想使用Struts2自带的文件上传拦截器,你可以在struts.xml文件中为你的Action添加fileUpload拦截器: ```xml &lt;interceptor-ref name="defaultStack"/&gt; &lt;interceptor-ref name="fileUpload"/&gt; ...

    Struts2的结构和编写过程笔记

    - **Interceptor(拦截器)**: 用于预处理Action或清理工作,比如自动填充Action属性、验证输入等。 #### Struts2的流转流程 1. **用户交互**: 用户通过JSP页面与系统交互,提交请求。 2. **请求处理**: 请求被发送...

    Java 框架开发

    Struts2的拦截器(Interceptor)机制也是其强大之处。拦截器可以理解为在Action调用前后执行的逻辑,比如日志记录、权限验证、事务管理等。通过灵活的拦截器链,开发者可以轻松地实现复杂的业务需求。 标签库是...

    Struts的验证框架Validate使用[2]

    虽然Struts 2不再依赖于单独的验证框架,但提供了类似的机制——基于拦截器的Validation Interceptor。不过,其工作原理和配置方式与Struts 1.x有所不同。 总的来说,Struts的验证框架Validate是提高应用质量的...

    用myeclipse9.0自带的jar包整合的SSH项目

    1. **Struts2**:Struts2是一个基于MVC(Model-View-Controller)设计模式的Java Web框架,它继承了Struts1的优点并引入了更多现代特性,如拦截器(Interceptor)机制,提供了更强大的控制层支持。在MyEclipse 9.0中...

    android连接java web服务器的小程序

    Struts 2提供了强大的拦截器、结果类型、插件等机制,使得开发者可以方便地处理请求、控制流程、验证数据等。 1. Struts 2框架基础:包括Action、Result、Interceptor等核心概念。Action是业务逻辑的载体,Result...

Global site tag (gtag.js) - Google Analytics