SSH学习之路-Spring MVC中的拦截器:HandlerInterceptorAdapter
继承HandlerInterceptor ,实现拦截器
* 作用: 任何你想做的事情都可以在preHandle postHandle afterCompletion完成;
如 在controller开始执行之前构建数据;并在controller执行完毕后释放数据.
关键点:拦截器类可以有两种方式
1.i mplements HandlerInterceptor
2. implements WebRequestInterceptor
Q: 可以同时声明多个拦截器吗?
A: 可以,并且可以指定特殊拦截器.如:
<mvc:interceptors>
<!--拦截全部请求: 使用bean定义一个Interceptor,直接定义在mvc:interceptors根下面的Interceptor将拦截所有的请求,这个拦截器用来获取资源,释放资源等 -->
<bean id="every" class="core.base.HelperInterceptor"/>
<!--拦截全部请求: 使用bean定义一个Interceptor,直接定义在mvc:interceptors根下面的Interceptor将拦截所有的请求,这里用来设定basepath -->
<bean id="every2" class="core.base.BaseUrlInterceptor"/>
<!--可以拦截特定请求 : 定义在mvc:interceptor下面的表示是对特定的请求才进行拦截的 -->
<mvc:interceptor>
<mvc:mapping path="/testHacker.do"/>
<bean id="special3" class="core.base.SpecialInterceptor"/>
</mvc:interceptor>
</mvc:interceptors>
<mvc:annotation-driven/>
Q: 如果存在多个拦截器,执行顺序是怎样的?
preHandle 按照xml配置中声明的顺序正序执行,即先声明的先执行
postHandle 按照xml配置中声明的顺序 倒序执行,即先声明的后执行
afterCompletion 同postHandle
Q: 如果preHandle返回为false,会怎样?
A: 其他拦截器,以及本拦截器的postHandle 和 afterCompletion均不执行!
运行截图:
项目结构截图:
猜你喜欢
- SSH学习demo,航班查询系统的增删查改,连表查询
- SSH实现增删改查功能,分页查询和简单的Ajax请求MySql数据库,适合新手学习
- SSH学习之路-Spring整合Hibernate(两种配置其中一种完全抛弃Hibernate的核心配置文件直接定义在Spring核心配置文件中)
- 学习SSH时的练习demo,实现分页和登录等简单功能
- SSH网站实例
- SSH框架开发购物车
- springmvc+spring3.x+hibernate3.x的比较清晰一点的能运行的例子,谢谢
- 基于SSH技术的HR人事管理系统,包含国际化中英文功能
- java SSH框架开发CRM客户关系管理系统
- SSH+mysql开发电商网站(可直接导入运行)
- spring+spring mvc+hibernate+bootstrap开发小型物业管理系统
- 基于SSH技术的企业宣传网站,包含SSH分页、上传图片、留言板,JSP聊天室等主要功能,分前后台
- /
- /Demo-Live-Spring-MVC3_HandlerInterceptor
- /Demo-Live-Spring-MVC3_HandlerInterceptor/.classpath
- /Demo-Live-Spring-MVC3_HandlerInterceptor/.myeclipse
- /Demo-Live-Spring-MVC3_HandlerInterceptor/.mymetadata
- /Demo-Live-Spring-MVC3_HandlerInterceptor/.project
- /Demo-Live-Spring-MVC3_HandlerInterceptor/.settings
- /Demo-Live-Spring-MVC3_HandlerInterceptor/.settings/.jsdtscope
- /Demo-Live-Spring-MVC3_HandlerInterceptor/.settings/com.genuitec.eclipse.j2eedt.core.prefs
- /Demo-Live-Spring-MVC3_HandlerInterceptor/.settings/org.eclipse.core.resources.prefs
- /Demo-Live-Spring-MVC3_HandlerInterceptor/.settings/org.eclipse.jdt.core.prefs
- /Demo-Live-Spring-MVC3_HandlerInterceptor/src
- /Demo-Live-Spring-MVC3_HandlerInterceptor/src/core
- /Demo-Live-Spring-MVC3_HandlerInterceptor/src/core/interceptor
- /Demo-Live-Spring-MVC3_HandlerInterceptor/src/core/interceptor/type1
- /Demo-Live-Spring-MVC3_HandlerInterceptor/src/core/interceptor/type2
- /Demo-Live-Spring-MVC3_HandlerInterceptor/src/core/util
- /Demo-Live-Spring-MVC3_HandlerInterceptor/src/core/interceptor
- /Demo-Live-Spring-MVC3_HandlerInterceptor/src/core
- /Demo-Live-Spring-MVC3_HandlerInterceptor

- SSH网站实例
- SSH框架开发购物车
- springmvc+spring3.x+hibernate3.x的比较清晰一点的能运行的例子,谢谢
- 原证 基于SSH技术的HR人事管理系统,包含国际化中英文功能
- 证精 java SSH框架开发CRM客户关系管理系统
- 证 SSH+mysql开发电商网站(可直接导入运行)
- 证精 spring+spring mvc+hibernate+bootstrap开发小型物业管理系统
- 原证 基于SSH技术的企业宣传网站,包含SSH分页、上传图片、留言板,JSP聊天室等主要功能,分前后台
- 证精 基于maven多模块构建的spring+spring mvc+hibernate开发cms内容管理系统,包括后台管理系统,对外接口模块,前端项目
- ssh简单的整合实例
- 整合好的SSH项目简单实例
- 原 自己搭的基础SSH框架+ZRTEE展示数据库结构(Myclipse2014+Mysql)

