手抄报 安全手抄报 手抄报内容 手抄报图片 英语手抄报 清明节手抄报 节约用水手抄报

spring mvc拦截器的编写

时间:2024-10-13 10:06:41

1、拦截器的编写必须实现HandleIntegerCeptor接口,在xml配置文件中添加<mvc:annotation-driven />或者使用注解@EnableWebMvc时,系统就会初始化ConversionServiceInterceptor,他是一个开始就被springmvc系统默加载的拦截器,他的主要作用就是根据配置在控制器上的注解来完成对应的功能。

spring mvc拦截器的编写

2、客户端发送请求,首先经过prehandle方法,此时获取绑定的数据,如果已经登录并且绑定数据则返回true,如果没有登录绑定数据则返回false并且跳转到其他的页面

spring mvc拦截器的编写

3、public class Logi艘绒庳焰nIntercepter extends HandlerInterceptorAdapter撑俯擂摔{@Overridepublic boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler)throws Exception {HttpSession session = request.getSession();User u = (User) session.getAttribute("user");

spring mvc拦截器的编写

4、if(u!=null){System.out.println("拦截器验证登录");return true;}System.out.println("拦截器验证未登录");response.sendRedirect("login.do");return false;}

spring mvc拦截器的编写

5、此方法只有在请求期间发生异常时执行@Overridepublic void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler,ModelAndView modelAndView) throws Exception {System.out.println("异常时执行");super.postHandle(request, response, handler, modelAndView);}

spring mvc拦截器的编写

6、@Overridepublic void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex)throws Exception {System.out.println("拦截器执行完毕");super.afterCompletion(request, response, handler, ex);}此方法会在拦截器成功时执行,如果发生异常则不执行此方法,该方法的执行依赖对应的preHandle方法的返回值为true时才会执行;

spring mvc拦截器的编写

7、整个拦截器的模式责任链模式,(在一个请求或者链上有多个处理拦截)(个人理解),这种开发模式可以认为是责任链模式;

spring mvc拦截器的编写
© 手抄报圈