`
diqizhan
  • 浏览: 147306 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Struts2拦截器有关的元素

阅读更多
    在Struts2中,与拦截器有关的元素有这5个:intercetors,intercetor,intercetor-ref,intercetor-stack和default-intercetor-ref。
     我们在使用一个拦截器之前,必须先在<intercetors>的段落里用一个intercetor元素注册它。例如,我们在下面这个package里注册两个拦截器:
    
     <package name="myPackage" extends="struts-default"> 
         <intercetors>
                <intercetor name="validate" class="com..."/>
                <intercetor name="logger" class="com..."/>
         </intercetors>
     </package>
     

     如果想把某个拦截器添加给某个动作,就要在该动作的action元素下使用intercetor-ref元素,如下:
    
     <package name="myPackage" extends="struts-default"> 
         <intercetors>
                <intercetor name="validate" class="com..."/>
                <intercetor name="logger" class="com..."/>
         </intercetors>

	<action name="delete" class="com...">
		<intercetor-ref name="validate"/>
		<intercetor-ref name="logger"/>
		<result name="success">/jsp/success.jsp</result>
	</action
     </package>
     


     大部分struts应用程序都会有多个action元素,当我们反复地在action元素里列出一大堆拦截器清单时可能会非常麻烦,这时,就用到了拦截器盏元素(intercetor-stack):
          
     <package name="myPackage" extends="struts-default"> 
         <intercetor-stack name="myStack">
                <intercetor name="validate" class="com..."/>
                <intercetor name="logger" class="com..."/>
         </intercetor-stack>

	<action name="delete" class="com...">
		<intercetor-ref name="myStack"/>
		<result name="success">/jsp/success.jsp</result>
	</action>
     </package>
     


     struts-default包已经定义了几个拦截器栈和一个default-intercetor-ref元素,如果某个动作没有定义任何拦截器,就将使用这个元素定义的默认拦截器或者拦截器栈:
<default-intercetor-ref name="defaultStack" />


如果某个动作除了使用默认的拦截器外,还使用到其他的拦截器,则需要重新定义默认的拦截器,这是因为如果action元素里出现了intercetor元素,default-intercetor-ref元素将被忽略。
分享到:
评论

相关推荐

    Struts2拦截器及其用法详细说明

    - XML配置:在`struts.xml`文件中,使用`&lt;interceptor&gt;`元素定义拦截器,`&lt;interceptor-stack&gt;`元素组合多个拦截器,`&lt;package&gt;`元素下的`interceptors`属性指定拦截器栈。 ```xml &lt;!-- 可以添加其他内置或...

    Struts2 拦截器的执行顺序(二十九)

    在Struts2中,每个拦截器的执行顺序是由`struts-default.xml`或自定义的配置文件中`&lt;interceptor-stack&gt;`元素定义的。默认情况下,Struts2提供了一些预定义的拦截器,如`params`(处理请求参数)、`exception`(处理...

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

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

    struts2拦截器和验证框架(适合初学者-经藏版)

    ### Struts2 拦截器与验证框架详解 #### 一、Struts2概述 Struts2是一个基于Java的企业级Web应用开发框架,它继承了Struts1的优点,并在此基础上进行了很多改进,使得开发更加灵活高效。Struts2的核心是拦截器...

    Struts2的拦截器的使用详解

    2. 拦截器配置:在struts.xml配置文件中,你可以定义多个拦截器,并通过`&lt;interceptor&gt;`和`&lt;interceptor-stack&gt;`元素来组织它们。例如,创建一个名为`myInterceptorStack`的拦截器栈,包含`logging`和`validation`两...

    Struts2 拦截器-v3

    5. **配置拦截器**:在`struts.xml`或相关的配置文件中,通过`&lt;interceptors&gt;`和`&lt;interceptor&gt;`元素来定义和注册拦截器。同时,`&lt;action&gt;`元素中的`interceptor-ref`用于指定拦截器栈的引用。 6. **拦截器链**:...

    struts拦截器jar 包

    标题中的"struts拦截器jar包"指的是用于增强Struts 1.x框架功能的特定库,它们是`saif-0.1.jar`和`saif-spring.jar`。这两个jar包是由开发者或社区成员Saif创建的,可能是为了集成Spring框架或者提供特定的拦截器...

    struts2拦截器示例

    拦截器是Struts2的核心特性之一,它在Action调用前后执行,提供了AOP(面向切面编程)的能力,允许开发者扩展和定制应用的行为,无需深入到每个Action的实现中。在本示例中,我们将探讨如何设置和使用Struts2的拦截...

    Struts2 拦截器详细配置过程

    Struts2 拦截器是框架中一个重要的组件,用于增强Action的处理能力,提供预处理和后处理的功能。在Struts2中,拦截器是基于Java的动态代理实现的,它们通过实现Interceptor接口来定义拦截行为。下面将详细阐述Struts...

    简单Struts2拦截器

    这通常在`struts.xml`配置文件中完成,通过`&lt;interceptor&gt;`元素定义拦截器,并使用`&lt;interceptor-ref&gt;`引用。 ### 4. 配置拦截器 在`struts.xml`中,可以为拦截器设置名字、指定其执行顺序,以及将拦截器应用到...

    struts2中拦截器的使用

    在struts.xml或类似的配置文件中,你可以通过`&lt;interceptor&gt;`元素定义拦截器,并通过`&lt;interceptor-stack&gt;`定义拦截器栈,然后将这个拦截器栈应用到特定的Action上。例如: ```xml &lt;!-- 或者单独...

    struts2拦截器一些用法

    ### Struts2拦截器的一些用法 在Struts2框架中,拦截器(Interceptor)扮演着非常重要的角色。它能够对Action的执行进行前置处理、后置处理等操作,是实现业务逻辑之前或之后增强功能的关键组件之一。下面将详细...

    详解Struts2拦截器机制

    拦截器可以配置在Struts.xml的global-results元素中,也可以配置在Action的 interceptor-ref元素中。 四、拦截器的拦截顺序 在Struts2中,拦截器的拦截顺序是非常重要的。我们可以在Struts.xml中配置拦截器的拦截...

    struts2自定义拦截器配置心得

    Struts2自定义拦截器的配置是Struts2框架中一个非常重要的功能,它允许开发者在Action执行前后插入自定义的逻辑,以实现如权限验证、日志记录、性能监控等多种需求。以下是对标题和描述中涉及的知识点的详细说明: ...

    struts2拦截器解决重复提交源代码

    在Struts2中,拦截器扮演着至关重要的角色,它们是AOP(面向切面编程)的一种实现,允许我们在动作执行前后插入自定义逻辑。拦截器可以处理诸如登录检查、权限验证、日志记录、性能监控等任务,而无需修改具体业务...

    JSP 开发之Struts2内建自定义拦截器.docx

    在Struts2中,拦截器(Interceptor)扮演着关键角色,它们允许开发者在Action执行前后插入自定义逻辑,比如日志记录、权限验证、数据校验等。本文将深入探讨Struts2的内建自定义拦截器及其配置。 首先,让我们理解...

    Struts2之拦截器原理分析及使用案例struts008

    在struts.xml配置文件中,我们可以通过`&lt;interceptors&gt;`和`&lt;interceptor&gt;`元素定义自定义的拦截器,然后通过`&lt;package&gt;`元素的`interceptors`属性引用这些拦截器,并指定拦截器的执行顺序。 ```xml ...

    struts2的自定义拦截器例子

    在这个"struts2的自定义拦截器例子"中,我们将深入探讨如何创建和使用自定义拦截器。 首先,拦截器的本质是Java的面向切面编程(AOP)思想在Struts2中的体现。它们允许开发者在动作执行前后插入自定义的逻辑,例如...

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

    `action`元素定义了登录Action,当用户尝试登录时,Struts2会根据配置的拦截器栈顺序执行拦截器。如果所有拦截器都成功执行,Action会被调用。结果映射定义了根据Action执行后的不同结果(如成功或失败)跳转到不同...

    Struts2的拦截器

    在Struts2的配置文件中,可以通过`&lt;interceptors&gt;`和`&lt;interceptor-ref&gt;`元素来定义和引用自定义拦截器。 #### 拦截器栈 拦截器栈是一系列拦截器的集合,按照指定的顺序依次执行。Struts2允许为不同的Action配置...

Global site tag (gtag.js) - Google Analytics