小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

采用Filter統(tǒng)一驗證是否登錄

 昵稱27831725 2017-09-10

        當(dāng)我們訪問系統(tǒng)的其他頁面的時候, 需要判斷是否是登錄中的用戶, 不然我們直接輸入鏈接地址就可以直接鏈接到我們的主頁面, 即使沒有登錄.  對于這個問題的解決, 采用Filter統(tǒng)一驗證, 我們在調(diào)用的時候先調(diào)用Filter, 讓Filter判斷是否已經(jīng)登錄.

        Filter統(tǒng)一驗證代碼:

  1. public class AuthFilter implements Filter, javax.servlet.Filter {  
  2.   
  3.     @Override  
  4.     public void destroy() {  
  5.           
  6.   
  7.     }  
  8.   
  9.     @Override  
  10.     public void doFilter(ServletRequest request, ServletResponse response,  
  11.             FilterChain chain) throws IOException, ServletException {  
  12.           
  13.             HttpServletRequest req = (HttpServletRequest)request;  
  14.             HttpServletResponse res = (HttpServletResponse)response;  
  15.             //基于http協(xié)議的servlet  
  16.               
  17.             //如果沒有登錄.  
  18.             String requestURI = req.getRequestURI().substring(req.getRequestURI().indexOf("/",1),req.getRequestURI().length());  
  19.           
  20.             //如果第一次請求不為登錄頁面,則進行檢查用session內(nèi)容,如果為登錄頁面就不去檢查.  
  21.             if(!"/login.jsp".equals(requestURI) && !"/servlet/AuthImageServlet".equals(requestURI))  
  22.             {  
  23.                 //取得session. 如果沒有session則自動會創(chuàng)建一個, 我們用false表示沒有取得到session則設(shè)置為session為空.  
  24.                 HttpSession session = req.getSession(false);  
  25.                 //如果session中沒有任何東西.  
  26.                 if(session == null ||session.getAttribute("user_info")==null)  
  27.                 {  
  28.                     res.sendRedirect(req.getContextPath() + "/login.jsp");  
  29.                     //返回  
  30.                     return;  
  31.                 }  
  32.                   
  33.             }  
  34.             //session中的內(nèi)容等于登錄頁面, 則可以繼續(xù)訪問其他區(qū)資源.  
  35.             chain.doFilter(req, res);  
  36.     }  
  37. }  


        在web.xml中配置Filter:

  1. <filter>  
  2.     <filter-name>AuthFilter</filter-name>  
  3.     <filter-class>com.bjpowernode.drp.util.filter.AuthFilter</filter-class>  
  4. </filter>  
  5. <filter-mapping>  
  6.     <filter-name>AuthFilter</filter-name>  
  7.     <url-pattern>*.jsp</url-pattern>  
  8. </filter-mapping>  
  9.   
  10. <filter-mapping>  
  11.     <filter-name>AuthFilter</filter-name>  
  12.     <url-pattern>/servlet/*</url-pattern>  
  13. </filter-mapping>  


        這樣在沒有登錄系統(tǒng)的時候, 會自動的跳轉(zhuǎn)到我們的登錄頁面. 并且在沒有登錄的情況下, 即使鏈接到其他的頁面, 也會跳轉(zhuǎn)到登錄頁面.

 

 

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多