`
chineseoa
  • 浏览: 102927 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

《WebWork in action》第五章

阅读更多
第5章: 使用interceptor增加功能

interceptor是WebWork最强大的特性之一,它可以在action和result执行前后进行处理。

一.  interceptor如何被调用

     1. 使用request封装类访问上传文件

        当请求(*.action的请求)进入WebWork的ServletDispatcher的时侯,WebWork会查找该action的位置,然后这些配置会
        构建一系列应用于这个action的interceptor。interceptor围绕着action和result的执行过程,当action和result执行
        完之后,每个interceptor都会按照相反的次序重新获得控制权。

        请求->webwork->interceptor1->interceptor2->action->result->interceptor2->interceptor1->webwork->响应

二.  使用预建的interceptor

     1. 工具interceptor
     2. 属性设置interceptor
     3. 工作流interceptor

     绝大多数预建的interceptor都扩展了com.opensymphony.xwork.interceptor.AroundInterceptor, 而不是直接实现Interceptor
     接口。

三.  使用预建的interceptor栈    

四.  构建你自己的interceptor

     interceptor必须是无状态的(没有实例变量),并且不能够使用任何ActionInvocation提供范围以外的API。

     示例:

     1. 认证:

        //暂时放一放,后面补起来 2007-9-25

     2. 在result执行之前获得回调控制

        //暂时放一放,后面补起来 2007-9-25

五.  interceptor vs Filter

     1. interceptor并不依赖于servlet容器;
     2. interceptor能够访问ActionContext、action和值栈等重要的对象;
     3. interceptor和action的生命周期是一样的,filter与request拥有一致的生命周期;

     不同的需求,可以在interceptor和Filter间有不同的选择;
分享到:
评论

相关推荐

    webwork in action

    - **使用拦截器增加功能**:第五章重点介绍了拦截器的作用及其配置方法,读者可以通过拦截器来增强动作的功能,例如日志记录、权限检查等。 - **依赖注入(IoC)**:第六章详细阐述了依赖注入的概念及其在WebWork中...

    webWork in Action 中文版 第五分卷(共7分卷)

    WebWork in Action(WebWork 在行动)中文版 很值得下载。 清晰版有点大,共7个部分,此为第五分卷,收点象征分 1分吧。找得挺费劲的。

    WebWork In Action

    根据提供的文件信息,我们可以提取并总结出关于《WebWork In Action》这本书的关键知识点。这些知识点主要围绕WebWork框架的核心概念、实现方式以及高级主题展开。 ### WebWork框架概述 **WebWork**是一款开源的...

    Spring In Action中文 第五部分

    Spring是掠过Java大地的一阵清风。Spring是以反向控制设计原理为基础... 中文版.part5.rar Spring in Action. 中文版.part6.rar Spring in Action. 中文版.part7.rar Spring in Action. 中文版.part8.rar

    Spring In Action中文 第八部分

    Spring是掠过Java大地的一阵清风。Spring是以反向控制设计原理为基础... 中文版.part5.rar Spring in Action. 中文版.part6.rar Spring in Action. 中文版.part7.rar Spring in Action. 中文版.part8.rar

    Spring In Action中文 第六部分

    Spring是掠过Java大地的一阵清风。Spring是以反向控制设计原理为基础... 中文版.part5.rar Spring in Action. 中文版.part6.rar Spring in Action. 中文版.part7.rar Spring in Action. 中文版.part8.rar

    Spring In Action中文 第七部分

    Spring是掠过Java大地的一阵清风。Spring是以反向控制设计原理为基础... 中文版.part5.rar Spring in Action. 中文版.part6.rar Spring in Action. 中文版.part7.rar Spring in Action. 中文版.part8.rar

    Spring in Action(第2版)中文版

    第5章使用数据库 5.1spring的数据访问哲学 5.1.1了解spring数据访问的异常体系 5.1.2数据访问的模板化 5.1.3使用dao支持类 5.2配置数据源 5.2.1使用jndi数据源 5.2.2使用数据源连接池 5.2.3基于jdbc驱动的...

    Spring In Action中文 第三部分

    Spring in Action. 中文版.part1.rar Spring in Action. 中文版.part2.rar Spring in Action. 中文版.part3.rar Spring in Action. 中文版.part4.rar Spring in Action. 中文版.part5.rar Spring in Action. 中文版....

    Spring In Action中文 第一部分

    Spring in Action. 中文版.part1.rar Spring in Action. 中文版.part2.rar Spring in Action. 中文版.part3.rar Spring in Action. 中文版.part4.rar Spring in Action. 中文版.part5.rar ...

    Spring In Action中文 第二部分

    Spring in Action. 中文版.part1.rar Spring in Action. 中文版.part2.rar Spring in Action. 中文版.part3.rar Spring in Action. 中文版.part4.rar Spring in Action. 中文版.part5.rar ...

    Spring In Action中文 第四部分

    Spring in Action. 中文版.part1.rar Spring in Action. 中文版.part2.rar Spring in Action. 中文版.part3.rar Spring in Action. 中文版.part4.rar Spring in Action. 中文版.part5.rar ...

    Spring in Action(第二版 中文高清版).part2

    第5章 使用数据库 5.1 Spring的数据访问哲学 5.1.1 了解Spring数据访问的异常体系 5.1.2 数据访问的模板化 5.1.3 使用DAO支持类 5.2 配置数据源 5.2.1 使用JNDI数据源 5.2.2 使用数据源连接池 5.2.3 基于...

    如何实现webwork+spring+hibernate框架结合

    #### 第五步:集成WebWork WebWork框架主要用于处理前端传来的请求,并调用相应的Action进行处理。为了使WebWork能够识别这些Action,需要配置`struts.xml`文件,并在其中定义Action的路径、类型及执行结果。 ```...

    webwork新手电子书

    虽然"WebWork in Action"的免费部分仅包含前三章,但这已经足够初学者了解WebWork的基本结构和工作原理。书中可能涵盖了以下主题: 1. **WebWork简介**:介绍WebWork的起源、设计理念以及在Java Web开发中的角色。 ...

    Spring in Action(第二版 中文高清版).part1

    第5章 使用数据库 5.1 Spring的数据访问哲学 5.1.1 了解Spring数据访问的异常体系 5.1.2 数据访问的模板化 5.1.3 使用DAO支持类 5.2 配置数据源 5.2.1 使用JNDI数据源 5.2.2 使用数据源连接池 5.2.3 基于...

Global site tag (gtag.js) - Google Analytics