- 什么是拦截器
java里的拦截器是动态拦截action调用的对象。它提供了一种机制可以使开发者可以定义在一个action执行的前后执行的代码,也可以在一个action执行前阻止其执行,同时也提供了一种可以提取action中可重用部分的方式。在AOP(Aspect-Oriented Programming)中拦截器用于在某个方法或字段被访问之前,进行拦截然后在之前或之后加入某些操作。 - 为什么要使用拦截器
如果具有这样一个需求,就是用户未登陆的拦截,接口的幂等性等,我们可以使用springmvc的拦截器为我们做到。实现接口HandlerInterceptor接口,需要实现3个方法,或者实现WebRequestInterceptor 接口,需要实现的方法和介绍。 -
需要实现的方法
preHandler : 是controller的前置方法,当方法返回false整个请求就结束了。 多个Interceptor,然后SpringMVC会根据声明的前后顺序一个接一个的执行,而且所有的Interceptor中的preHandle方法都会在 。WebRequestInterceptor 和 HandlerInterceptor的preHandler的方法的区别就在与webRepuestInterceptor的preHandler的方法是没有拦截的功能,是没有返回值的。postHandle : 就是在当前请求进行处理之后,也就是Controller 方法调用之后执行,但是它会在DispatcherServlet 进行视图返回渲染之前被调用,
afterHandler : 该方法将在整个请求结束之后,也就是在DispatcherServlet 渲染了对应的视图之后执行,可用于清理资源
相关文章
- 07-01Delphi中取整函数Round的Bug解决
- 07-01后台管理微服务(二)——docker的使用
- 07-01我的spring-boot-study之mybatis的应用
- 07-01信息的表示和处理之信息存储
- 07-01Hbase的读写流程
- 07-01【赵强老师】HBase的过滤器
- 07-01113.输入10个国家的名字,按由小到大排序
- 07-01sapi语音朗读的简单用法(Unity中)
- 07-01海信欧洲区营业收入激增113%,成功巩固在该地区的竞争优势和盈利能力
- 07-01返回值的问题