• 【Struts2复习知识点二十四】 拦截器


    自定义拦截器:

    自定义拦截器可以处理  敏感词汇等。AOP的一个体现。

    实现Interceptor接口,重写intercept方法,invocation.invoke()会循环调用。

    View Code
    import com.opensymphony.xwork2.ActionInvocation;
    import com.opensymphony.xwork2.interceptor.Interceptor;

    public class MyInterceptor implements Interceptor {

    public void destroy() {
    // TODO Auto-generated method stub

    }

    public void init() {
    // TODO Auto-generated method stub

    }

    public String intercept(ActionInvocation invocation) throws Exception {
    long start = System.currentTimeMillis();
    String result = invocation.invoke();
    long end = System.currentTimeMillis();
    System.out.println("action time = " + (end - start));
    return result;
    }

    }

    struts.xml引入自定义拦截器:

    View Code
    <package name="test" namespace="/" extends="struts-default">
    <interceptors>
    <interceptor name="my" class="com.bjsxt.interceptor.MyInterceptor"></interceptor>
    </interceptors>


    <action name="test" class="com.bjsxt.action.TestAction">
    <result>/test.jsp</result>
    <interceptor-ref name="my"></interceptor-ref>
    <interceptor-ref name="defaultStack"></interceptor-ref>
    </action>

    </package>


    拦截器

    名字

    说明

    Alias Interceptor

    alias

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

    Chaining Interceptor

    chain

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

    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中。

    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



  • 相关阅读:
    价值理论的出发点和落脚点都是人--以人为本
    价值理论是人类决策和行为的标尺
    事实判断和价值判断
    什么是价值理论?---人们认识世界和改造世界的过程可分解为四个基本阶段
    大人只看利弊 小孩才分对错
    为人处世、事实判断和价值判断皆不可少--人类认识客观事物的标尺:对错与利弊
    知行之间--价值与真理--行动的标尺
    事实判断与价值判断之间的桥梁就是人的需要
    10分钟梳理MySQL核心知识点
    postman设置环境变量,实现一套接口根据选择的环境去请求不同的url
  • 原文地址:https://www.cnblogs.com/surge/p/2368751.html
Copyright © 2020-2023  润新知