SpringMvc自定義攔截器

  1. 首先在SpringMvc.xml中加入自己定義的攔截器

<mvc:interceptors>

        <mvc:interceptor>

        <mvc:mapping path="/manager/**"/>//攔截改路徑的url請求

            <bean id="mLoginInterceptor" class="com.usermanage.util.MLoginInterceptor"/>

        </mvc:interceptor>

      </mvc:interceptors>

2.任何訪問我定義攔截的url都會返回登錄頁面

package com.usermanage.util;


import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;


import org.springframework.web.servlet.ModelAndView;

import org.springframework.web.servlet.handler.HandlerInterceptorAdapter;


import com.usermanage.entity.Tmanager;


public class MLoginInterceptor extends HandlerInterceptorAdapter {

 

    @Override

    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {

        String url = request.getRequestURL().toString();

        String path = request.getContextPath();

        String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";

        if (request.getSession().getAttribute("mloginUser") == null){

        System.out.println(request.getSession().getAttribute("loginUser"));

        response.sendRedirect(basePath+"index.jsp");

        return false;

        }else{

        System.out.println("sdsjkd");

        return true;

        }

           

            //request.getRequestDispatcher("redirect:toIndexHome").forward(request, response);

    }

 

    @Override

    public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {

   

        super.postHandle(request, response, handler, modelAndView);

       

    }

}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章