`

Struts2内建拦截器的简要介绍

阅读更多

Struts2内建拦截器的简要介绍
 
alias (别名拦截器):允许参数在跨越多个请求时使用不同别名,该拦截器可将多个Action采用不同名字链接起来,然后用于处理同一信息。
autowiring (自动装配拦截器):主要用于当Struts2和Spring整合时,Struts2可以使用自动装配的方式来访问Spring容器中的Bean。
chain (链拦截器):构建一个Action链,使当前Action可以访问前一个Action的属性,一般和<result type="chain" .../>一起使用。
checkbox (多选框拦截器):将没有选中的checkbox项设置为false,协助管理多选框。在HTTP请求里,那些没有被选中的项通常没有任何值。
conversionError (转换器错误拦截器):这是一个负责处理类型转换错误的拦截器,它负责将类型转换错误从ActionContext 中取出,并转换成Action的FieldError错误。
createSession (创建Session拦截器):该拦截器负责创建一个HttpSession对象,主要用于那些需要有HttpSession对象才能正常工作的拦截器中。
clearSession (清除Session拦截器):负责销毁HttpSession对象.
debugging (调试拦截器):当使用Struts2的开发模式时,这个拦截器会提供更多的调试信息。
execAndWait (执行和等待拦截器):后台执行Action时,给用户显示一个过渡性的等待页面。
externalRef (扩展拦截器):负责扩展引用
exception (异常拦截器):将Action抛出的异常映射到结果,这样就通过重定向自动处理异常。
fileUpload (文件上传拦截器):这个拦截器主要用于文件上传,它负责解析表单中文件域的内容。
i18n (国际化拦截器):主要负责把用户所选的语言、区域放入用户Session中。
logger (日志拦截器):主要是输出Action的名字,提供简单的日志输出。
modelDriven (模型驱动拦截器):这是一个用于模型驱动的拦截器,当某个Action类实现了ModelDriven接口时,它负责把getModel ()方法的结果堆入ValueStack中。
scopedModelDriven (作用域模型驱动拦截器):如果一个Action实现了一个ScopedModelDriven接口,该拦截器负责从指定生存范围中找出指定的Model,并将通过setModel方法将该Model传给Action实例。
params (参数过滤拦截器):这是一个最基本的拦截器,它负责解析HTTP请求中的参数,并将参数值设置成Action对应的属性值。
prepare (预备拦截器):如果action实现了Preparable接口,将会调用该拦截器的prepare()方法。
staticParams (静态参数拦截器):这个拦截器负责将xml中<action>标签下<param>标签中的参数传入action。
scope (作用域拦截器):这是范围转换拦截器,它可以将Action状态信息保存到HttpSession范围,或者保存到ServletContext 范围内。
servletConfig (Servlet配置拦截器):如果某个Action需要直接访问Servlet API,就是通过这个拦截器实现的,它提供访问HttpServletRequest和HttpServletResponse的方法,以map方式访问。
roles (角色拦截器):这是一个JAAS(Java Authentication and Authorization Service,Java授权和认证服务)拦截器,只有当浏览者取得合适的授权后,才可以调用被该拦截器拦截的Action。
timer (计时拦截器):这个拦截器负责输出Action的执行时间,在分析该Action的性能瓶颈时比较有用。
token (令牌拦截器):这个拦截器主要用于阻止重复提交,它检查传到Action中的token,从而防止多次提交。
tokenSession (令牌会话拦截器):这个拦截器的作用与前一个基本类似,只是它把非法提交的数据保存在HttpSession中,不跳转到错误页面,再次生成与第一次相同的响应页面
validation (验证拦截器):通过执行在xxxAction-validation.xml中定义的校验器,从而完成数据校验。
workflow (工作流拦截器):这个拦截器负责调用Action类中的validate方法,如果校验失败,则不执行业务方法,而是返回input的逻辑视图。
jsonValidation (json拦截器):验证失败时,可以将fieldError和actionErrors信息序列化成json,返回给客户端
profiling (概要拦截器):允许Action记录简单的概要信息。
actionMappingParams (Action映射拦截器):Parameters set by the action mapping are not set/not available through ParameterAware 
annotationWorkflow (注解工作流拦截器):利用注解替代XML配置,使用annotationWorkflow拦截器可以使用@After、@Before、@BeforeResult等注解,执行流程为before-execute-beforeResult-after顺序
store (消息存储拦截器):在会话中为Action存储和检索消息、字段错误以及Action错误,该拦截器要求Action实现ValidationAware接口。

分享到:
评论

相关推荐

    创建自己struts2拦截器

    下面我们将详细介绍如何创建自定义的Struts2拦截器。 1. **理解Struts2拦截器工作原理** Struts2中的拦截器是一个实现了`Interceptor`接口或者继承了`AbstractInterceptor`抽象类的Java类。当一个请求到达时,...

    struts2拦截器应用小例子

    这个"struts2拦截器应用小例子"可能包含了一个简单的拦截器实现,展示了如何在实际项目中集成和使用。通过这个例子,你可以学习到如何创建、注册拦截器,以及如何在Struts2框架中构建拦截器栈,从而更灵活地管理应用...

    Struts2拦截器实现权限控制demo

    在这个“Struts2拦截器实现权限控制demo”中,我们将深入探讨如何利用拦截器来实现细粒度的用户权限管理。 首先,我们需要了解Struts2中的拦截器工作原理。拦截器是基于Java的动态代理模式实现的,它们按照配置的...

    Struts2简单的拦截器示例

    这个“Struts2简单的拦截器示例”是为初学者设计的,旨在帮助理解如何在Struts2中创建和使用拦截器。 首先,我们来理解什么是拦截器。在Struts2中,拦截器是一个实现了`Interceptor`接口或者继承自`...

    利用struts2拦截器做的简单登录

    本文将深入探讨如何利用Struts2的拦截器实现简单的登录功能。拦截器是Struts2框架的核心组件之一,它允许我们在动作执行前后插入自定义逻辑,比如权限验证、日志记录等。 首先,我们来理解一下Struts2拦截器的工作...

    简单理解Struts2中拦截器与过滤器的区别及执行顺序

    Struts2 中拦截器与过滤器的区别及执行顺序 Struts2 中的拦截器(Interceptor)和过滤器(Filter)是两个不同的概念,虽然它们都可以影响请求的处理过程,但它们的作用域、执行顺序和实现机制都有所不同。 拦截器...

    简单介绍Struts2中的拦截器的小示例

    在Struts2中,拦截器(Interceptor)是实现业务逻辑控制和增强功能的重要组件,它们按照预定义的顺序执行,可以理解为一系列在动作执行前后插入的“中间件”。 拦截器的工作原理是在Action调用之前和之后执行,通过...

    struts2的自定义拦截器例子

    通过这个简单的自定义拦截器例子,我们可以看到Struts2拦截器的灵活性和实用性。它们使得业务逻辑和框架的控制层分离,降低了代码的耦合度,提高了代码的可复用性和可维护性。理解并熟练运用拦截器,对于提升Struts2...

    struts2拦截器国际化

    在Struts2中,拦截器(Interceptor)是实现业务逻辑控制和增强功能的重要机制,而国际化(Internationalization,简称i18n)则能帮助我们构建支持多语言的Web应用。下面将详细解释这两个知识点以及它们如何在Struts2...

    Struts2的拦截器的小例子程序

    ### Struts2拦截器原理与实战案例解析 #### 一、Struts2拦截器概述 Struts2框架作为Java Web开发中的重要工具之一,其核心优势在于强大的MVC架构支持和丰富的扩展性。其中,拦截器(Interceptor)是Struts2框架的...

    struts拦截器的例子

    Struts拦截器是Java Web开发中的重要概念,尤其在基于Struts 2框架的应用中扮演着核心角色。这个"struts拦截器的例子"提供了一个学习和理解拦截器工作原理的起点,非常适合对这一主题感兴趣的初学者。 Struts 2框架...

    struts2的一个自定义拦截器小例子

    Struts2是一个强大的Java web应用程序...这个例子展示了如何创建一个简单的拦截器并在Struts2应用中使用它。实践中,拦截器可以用于处理诸如用户登录验证、性能监控等多种场景,极大地提高了代码的复用性和可维护性。

    struts2中的拦截器

    此外,Struts2框架内建了一些常用的拦截器,如`Exception`、`Validation`、`SessionAware`等。`Exception`拦截器处理Action抛出的异常,`Validation`拦截器负责数据验证,`SessionAware`则帮助Action感知...

    struts1.2拦截器使用插件

    2. **注册拦截器**:在`struts-config.xml`配置文件中,通过`&lt;interceptors&gt;`标签定义拦截器栈,然后通过`&lt;action&gt;`标签的`interceptor-ref`属性引用拦截器栈。 3. **配置拦截器栈**:在`struts-config.xml`中,...

    Struts2 拦截器 Interceptor

    2. **拦截器栈**:多个拦截器的集合称为拦截器栈,Struts2默认提供了几个内置的拦截器栈,如`defaultStack`、`jsonStack`等,也可以自定义拦截器栈。 3. **拦截器配置**:拦截器可以通过Struts2的配置文件`struts....

    浅谈Struts2拦截器的原理与实现.docx

    Struts2 拦截器是Struts2框架的核心组件之一,它允许开发者在Action执行前后插入自定义的处理逻辑,实现对请求的预处理和后处理,从而增强应用程序的功能和控制流程。以下是对Struts2拦截器原理与实现的详细解析: ...

    12 struts2拦截器

    在Struts2中,创建一个拦截器非常简单,只需要实现`Interceptor`接口或者继承`AbstractInterceptor`抽象类。通常,我们会选择继承`AbstractInterceptor`,因为它提供了一些基本的方法和属性。然后在`intercept()`...

    Struts2 拦截器 和 Java 中的动态代理

    在Struts2中,ActionInvocation接口代表了Action的执行过程,它可以被视为一个简单的调用栈,每个拦截器都是栈上的一个元素。当调用`invoke()`方法时,会按顺序执行这些拦截器,直到到达Action。这个设计模式与Java...

    Struts拦截器及token拦截器防止重复提交例子源码

    Struts2拦截器的实现原理相对简单,当请求struts2的action时,Struts 2会查找配置文件,并根据其配置实例化相对的 拦截器对象,然后串成一个列表,最后一个一个地调用列表中的拦截器 三、定义Struts2拦截器。 ...

    struts2拦截器时序图

    Struts2拦截器是Struts2框架中的一个重要组件,它提供了一种机制允许开发者在Action调用前后插入自定义的行为,甚至能够阻止Action的执行。这种机制在很多企业级Java项目中有着广泛的应用,例如进行数据转换、校验、...

Global site tag (gtag.js) - Google Analytics