springmvc自定義攔截器

自定義攔截器java

  1. 按照mvc框架提供的規範開發一個自定義的控制器web

  2. springmvc配置文件中註冊spring

     <!-- 註冊自定義的攔截器 -->
    <mvc:interceptors>
        <mvc:interceptor>
            <!-- 指定當前的攔截器攔截的路徑 -->
            <mvc:mapping path="/user/*"/>
            <bean class="cn.internet.intercepter.MyIntercepter"></bean>
        </mvc:interceptor>
    </mvc:interceptors>
package cn.internet.intercepter;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.springframework.web.servlet.HandlerInterceptor;
import org.springframework.web.servlet.ModelAndView;


/**
 * 自定義攔截器
 * @author    zhangbin
 *
 */
public class MyIntercepter implements HandlerInterceptor{

    @Override
    public void afterCompletion(HttpServletRequest arg0,
            HttpServletResponse arg1, Object arg2, Exception arg3)
            throws Exception {
        System.out.println("------------afterCompletion------------");
        
    }

    @Override
    public void postHandle(HttpServletRequest arg0, HttpServletResponse arg1,
            Object arg2, ModelAndView arg3) throws Exception {
        System.out.println("------------postHandle------------");
        
    }

    @Override
    public boolean preHandle(HttpServletRequest arg0, HttpServletResponse arg1,
            Object arg2) throws Exception {
        System.out.println("------------preHandle------------");
        //攔截客戶端請求,檢查權限,若是沒有權限,返回false
        //權限檢查從session裏面把登陸用戶拿出來 根據登陸用戶來得到角色,根據角色得到權限,
        //根據權限來判斷當前你訪問的地址對應的是哪一個權限 看這個用戶權限裏面是否包含 若是有就放行,若是沒有那就直接跳轉到沒有權限頁面
        
        return true;
    }

}
相關文章
相關標籤/搜索