您好,登錄后才能下訂單哦!
一個非常簡單的登錄權限攔截器
問題一:登錄頁面的提交請求肯定是要過濾掉的,目前采用在xml里配置<mvc:mapping path="/supplier/*"/>來過濾,可不可以配置不攔截某種請求。如果是按目前這種配置需要攔截請求,當請求太多的時候那就太麻煩了。
問題二:我簡單地在攔截器里判斷session是否有值,如果有表示登錄,如果沒有則跳轉登錄頁面。按我下面的做法是不行的,有沒有正確而有效的方法。
問題三:如果大家能夠給出在攔截器內跳轉頁面的方案,可我的login.jsp是放在WEB-INF下面的,通過ModelAndView跳轉時,視圖解析器會跳轉到/WEB-INF/login.jsp下,那肯定是找不到頁面的。但如果我放到此文件夾下,那瀏覽器又不能訪問login.jsp頁面了。
public class UserInterceptor implements HandlerInterceptor{ @Override public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object obj, Exception err) throws Exception { } @Override public void postHandle(HttpServletRequest request, HttpServletResponse response, Object obj, ModelAndView mav) throws Exception { response.sendRedirect("/login.jsp"); } @Override public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object obj) throws Exception { String str = (String) request.getSession().getAttribute("isLogin"); System.out.println("str=========>"+str); if(str!=null){ return true; } return false; } }
<!-- 自定義攔截鏈配置 -->
<mvc:interceptors>
<mvc:interceptor>
<mvc:mapping path="/supplier/*"/>
<mvc:mapping path="/goods/*"/>
<mvc:mapping path="/contact/*"/>
<bean class="com.xiaoxing.shangjia.user.controller.UserInterceptor"></bean>
</mvc:interceptor>
</mvc:interceptors>
獲取【下載地址】
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。