Spring MVC 拦截器
来源:互联网 发布:如何加强网络信息安全 编辑:程序博客网 时间:2024/05/20 03:47
springMVC中对拦截器有良好的支持。一般可通过两种方式,其一实现Spring 的HandlerInterceptor 接口或继承该接口的实现类;其二实现Spring的WebRequestInterceptor接口货继承该接口的实现类。
拦截器的用途是非常广的,它主要的作用是拦截用户请求,处理数据,判定请求是否合理,决定是否放行。通常把拦截器用来验证权限、判断用登陆状态等。
今天小博老师先给大家介绍SpringMVC中第一种拦截器的实现方式。我们先来看一下HandlerInterceptor接口的源码结构:
HandlerInterceptor 接口中定义了三个方法:
1. preHandle 方法。该方法会在请求处理之前进行调用。返回值是布尔值Boolean 类型的,当返回false时请求结束,后续拦截器 和Controller 都不会被执行;当返回true 时继续调用下个拦截器 的preHandle 方法,如果已经是最后一个拦截器,则调用当前请求的Controller 方法。
2. postHandle 方法。该方法在请求处理之后,即Controller 方法调用之后执行。但是将会DispatcherServlet 进行视图渲染之前被调用,因此可以对Controller 处理之后的ModelAndView 对象进行操作,以便于在视图渲染时使用。
3. afterCompletion方法。该方法在整个请求结束之后,即DispatcherServlet 渲染对应的视图之后才被执行。这个方法的主要作用是进行对象清理、资源释放。
拦截器在spring中的配置方式如下:
<mvc:interceptors>
<!-- 使用bean定义一个Interceptor,直接定义在mvc:interceptors根下面的Interceptor将拦截所有的请求 -->
<bean class="com.bwf.interceptor.BwfInterceptor"/>
<mvc:interceptor>
<mvc:mapping path="/bwf/company"/>
<!-- 定义在mvc:interceptor下面的表示是对特定的请求才进行拦截的 -->
<bean class="com.bwf.interceptor.LoginInterceptor"/>
</mvc:interceptor>
</mvc:interceptors>
- Spring MVC 拦截器
- Spring MVC 拦截器
- Spring MVC 拦截器
- spring MVC拦截器
- Spring MVC拦截器
- spring mvc 拦截器
- spring mvc 拦截器
- spring mvc 拦截器
- Spring mvc 拦截器
- spring mvc 拦截器
- spring mvc 拦截器
- spring mvc 拦截器
- Spring MVC 拦截器
- spring mvc拦截器
- spring mvc拦截器
- spring mvc拦截器
- spring mvc拦截器
- spring mvc 拦截器
- 优秀开源项目学习(cms、商城、邮件、微信等)
- 回调函数
- 莎士比亚(50条名句)内容大全
- Hive(八)--日期函数
- 央视《第一时间》:公共及企业网站屡遭黑客攻击
- Spring MVC 拦截器
- DataTables API
- PHP curl 模拟http https请求
- Python进阶(二十三)-Django使用pymysql连接MySQL数据库做增删改查
- 关于“搭桥”游戏生成随机地图的设计思路
- 记2017年搜狗语音部门实习生面试
- 域名邮箱和域名解析GitHub Pages
- ubunt 下新建用户打开shell只显示$ 不显示用户名路径问题 笔记
- 通过创建GameObject 改变Mesh进行网格绘制