SpringMVC 拦截器

1、在springmvc-config.xml中添加一下配置

  • 注意:这里拦截的是请求、而不是页面

     <!-- 配置拦截器 -->
     <mvc:interceptors>
       <mvc:interceptor>
           <mvc:mapping path="/user/*"/>
           <bean class="cn.com.Interceptor.MyInterceptor"></bean>
       </mvc:interceptor>
     </mvc:interceptors>
    

2、编写Interceptor、拦截相关请求

  • 1、实现 HandlerInterceptor 接口

  • 2、继承自HandlerInterceptorAdapter 抽象类

  • 示例代码

          package cn.com.Interceptor;
          import javax.servlet.http.HttpServletRequest;
          import javax.servlet.http.HttpServletResponse;
          import org.springframework.web.servlet.HandlerInterceptor;
          import org.springframework.web.servlet.ModelAndView;
    
          public class MyInterceptor implements HandlerInterceptor{
    
              @Override
          public void afterCompletion(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2, Exception arg3)
                  throws Exception {
              // TODO Auto-generated method stub
    
          }
    
          @Override
          public void postHandle(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2, ModelAndView arg3)
                  throws Exception {
              // TODO Auto-generated method stub
    
          }
    
          @Override
          public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object arg2) throws Exception {
              Object object = request.getSession().getAttribute("user");
              System.out.println("进入拦截器");
              if(object!=null){
                  System.out.println("用户已登录");
                  return true;            
              }
              System.out.println("非法访问");
              request.getRequestDispatcher("user/toLogin").forward(request, response);
              return false; //拦截
          }
    
      }
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一、定义Interceptor实现类 SpringMVC 中的Interceptor 拦截请求是通过Handler...
    bboymonk阅读 390评论 0 0
  • Interceptor拦截器是Spring MVC中重要的功能,它的主要作用是拦截用户的请求 并进行相应的处理。比...
    养码哥阅读 540评论 0 1
  • 姓名: 李小娜 [嵌牛导读]: SpringMVC 中的Interceptor 拦截器也是相当重要和相当有用的,...
    n184阅读 3,217评论 0 4
  • A girl By Ezra Pound The tree has entered my hands, The s...
    小王子的狐狸先森阅读 228评论 0 0
  • 谁爱怎么想就怎么想,爱怎么看我就怎么看我,我没有义务去满足每个人的需要,我有我自己的方式,管他们怎么说呢,都滚蛋吧。
    纠结的小螃蟹阅读 233评论 0 3