作用:类似filter,在filter之后,可以在程序执行的前后做事情,也可以终止原始程序的执行,返回值要是true才能生效
与filter区别
步骤:
1.创建一个HandlerInterceptor的实现类,并重写里面的三个方法,他们分别负责拦截前中后
2.在springmvc中注册该实现类对象
3.在springmvc.xml中配置拦截器拦截路径与忽略路径;并引入刚刚注册的拦截器id,该实现类才能生效
拦截器实现类
public class MyInterceptor implements HandlerInterceptor {
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
response.getWriter().print("666666");
System.out.println("pre......");
return true;
}
注册容器
<bean id="interceptor" class="com.pb.day0905.intercepter.MyInterceptor"></bean>
配置拦截器生效路径
<mvc:interceptors>
<mvc:interceptor>
<mvc:mapping path="/**"/> //全部拦截
<mvc:exclude-mapping path="/page"/>//忽略路径
<ref bean="interceptor"></ref>
</mvc:interceptor>
</mvc:interceptors>