自定義攔截器java
按照mvc框架提供的規範開發一個自定義的控制器web
在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; } }