博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
springMVC拦截器和过滤器总结
阅读量:6689 次
发布时间:2019-06-25

本文共 2158 字,大约阅读时间需要 7 分钟。

拦截器: 用来对访问的url进行拦截处理

用处: 权限验证,乱码设置等

spring-mvc.xml文件中的配置:

   

对所有的url进行拦截

java代码

package com.hbut.interceptor;import org.springframework.web.servlet.HandlerInterceptor;import org.springframework.web.servlet.ModelAndView;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;/** * @Author XiJun.Gong * @DATE 2016/6/1. * aim:   com.hbut.interceptor */public class TestInterceptor implements HandlerInterceptor {    @Override    public boolean preHandle(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o) throws Exception {             //todo 在此处添加要操作code        System.out.println("preHandle");         return true;  //todo 此处为false时,请求不会到达control层    }    @Override    public void postHandle(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, ModelAndView modelAndView) throws Exception {        System.out.println("postHandle");  //todo 可以用来修改信息,跳转等    }    @Override    public void afterCompletion(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, Exception e) throws Exception {        System.out.println("afterCompletion"); //todo 最后执行    }}

另一种拦截器:大同小异

package com.hbut.interceptor;import org.springframework.ui.ModelMap;import org.springframework.web.context.request.WebRequest;import org.springframework.web.context.request.WebRequestInterceptor;/** * @Author XiJun.Gong * @DATE 2016/6/1. * aim:   com.hbut.interceptor */public class Test2Interceptor implements WebRequestInterceptor {    @Override    public void preHandle(WebRequest webRequest) throws Exception {    }    @Override    public void postHandle(WebRequest webRequest, ModelMap modelMap) throws Exception {    }    @Override    public void afterCompletion(WebRequest webRequest, Exception e) throws Exception {    }}

过滤器: 依赖于servlet容器,使用回调函数,过滤范围大

拦截器: 依赖于框架容器 比如spring、mybatis ,灵活

转载地址:http://kbkoo.baihongyu.com/

你可能感兴趣的文章
MyBatis的xml文件增量热加载,支持多数据源
查看>>
wine安装的软件如何卸载
查看>>
C语言中基本的数据类型 和常用表达式
查看>>
More Fileds的直接输出和获取自定义字段的方法
查看>>
12.1LNMP架构介绍12.2MySQL安装12.312.4 PHP安装12.5Nginx安装
查看>>
ubuntu下安装ROR
查看>>
工作流调度
查看>>
Nginx TCP代理和负载均衡
查看>>
理解原型对象
查看>>
Apache虚拟目录
查看>>
容器是实现操作系统虚拟化的一种途径
查看>>
电脑内部声音怎么录制 Mac在线录制音频
查看>>
个人对生活意义的观点
查看>>
Editplus的配置说明:Web服务器设置和用户工具栏设置
查看>>
JAVA RPC:从上手到爱不释手
查看>>
详细介绍Java中的堆、栈和常量池
查看>>
Go环境变量
查看>>
用Doxygen优化Inkpad的模块关系
查看>>
Delphi 数据类型列表
查看>>
eclipse 创建maven Web项目
查看>>