zoukankan      html  css  js  c++  java
  • struts2-拦截器的创建方式

    一.拦截器的创建方式

      1.实现Interceptor接口;

        >实现该接口后,需要重写三个方法,分别是init(),intercept(ActionInvocation nvocation),destroy();

        >一般来说有生命周期方法的类,生命周期都不会太短,拦截器的生命周期随项目创建而创建,项目结束而摧毁;

        >如果不需要进行初始化和结尾处理时,实现该接口就要点没必要了,所以不推荐该方式

      2.继承抽象类AbstractInterceptor;

        >继承后,需要重写一个方法即可:intercept(ActionInvocation nvocation),该类还是比较体贴的,帮你处理掉了两个生命周期方法;

        >可以使用,但是方式三更好点

      3.继承MethodFilterInterceptor;

        >继承后,需要实现一个方法:doIntercept(ActionInvocation invocation),对要拦截的请求将执行的方法;

        >intercept方法很像servlet时的service方法,会对请求进行判断;这里的话intercept封装了对请求是否拦截的代码,若拦截的话会调用doIntercept;依次类推doIntercept()对应doGet和doPost

        >功能上:可以定制拦截器需要拦截的方法和不拦截的方法

        >doIntercept(ActionInvocation invocation)的参数有一个方法invocation.invoke(),表示放行,执行下一个拦截器

        >如果在doIntercept里没有放行方法,直接返回一个字符串的话,流程将流向result类来处理转发或重定向等到指定的页面。

  • 相关阅读:
    springcloud 微服务 分布式 Activiti6 工作流 vue.js html 跨域 前后分离
    java 整合redis缓存 SSM 后台框架 rest接口 shiro druid maven bootstrap html5
    继承
    封装
    对象的生命周期
    类与对象
    如何理解类?
    面向过程
    jdk1.8新特性
    git使用指南
  • 原文地址:https://www.cnblogs.com/ibcdwx/p/12745990.html
Copyright © 2011-2022 走看看