激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

香港云服务器
服務器之家 - 編程語言 - JAVA教程 - Java web過濾器驗證登錄防止未登錄進入界面

Java web過濾器驗證登錄防止未登錄進入界面

2020-06-07 13:32Alexia(minmin) JAVA教程

這篇文章主要介紹了Java web過濾器驗證登錄防止未登錄進入界面,在一些系統中經常可以用到此功能,對java web 驗證登錄知識感興趣的朋友一起看下吧

今天用ssh2寫了個簡單的系統,發現了一個問題,我這系統必須先登錄成功才能進入主頁,但我在瀏覽器里直接輸入主頁地址,發現也能進入,這個肯定不好,毫無安全性可言,后經查資料發現需要登錄過濾器,就試了下,發現果然可以避免未經登錄即可進入主頁的危險,下面是我整理出的詳細步驟:

1.首先寫一個權限過濾filter類,實現Filter接口

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
public class LoginFilter implements Filter {
 @Override
 public void init(FilterConfig filterConfig) throws ServletException {
  // TODO Auto-generated method stub
 }
 @Override
 public void doFilter(ServletRequest request, ServletResponse response,
   FilterChain chain) throws IOException, ServletException {
  // 獲得在下面代碼中要用的request,response,session對象
  HttpServletRequest servletRequest = (HttpServletRequest) request;
  HttpServletResponse servletResponse = (HttpServletResponse) response;
  HttpSession session = servletRequest.getSession();
  // 獲得用戶請求的URI
  String path = servletRequest.getRequestURI();
  //System.out.println(path);
  // 從session里取員工工號信息
  String empId = (String) session.getAttribute("empId");
  /*創建類Constants.java,里面寫的是無需過濾的頁面
  for (int i = 0; i < Constants.NoFilter_Pages.length; i++) {
   if (path.indexOf(Constants.NoFilter_Pages[i]) > -1) {
    chain.doFilter(servletRequest, servletResponse);
    return;
   }
  }*/
  // 登陸頁面無需過濾
  if(path.indexOf("/login.jsp") > -1) {
   chain.doFilter(servletRequest, servletResponse);
   return;
  }
  // 判斷如果沒有取到員工信息,就跳轉到登陸頁面
  if (empId == null || "".equals(empId)) {
   // 跳轉到登陸頁面
   servletResponse.sendRedirect("/JingXing_OA/login.jsp");
  } else {
   // 已經登陸,繼續此次請求
   chain.doFilter(request, response);
  }
 }
 @Override
 public void destroy() {
  // TODO Auto-generated method stub
 }
}

2.然后在web.xml里配置需要登陸權限驗證的JSP文件:

  a.如果是某個具體的JSP文件(如a.jsp)需要登陸驗證

?
1
2
3
4
5
6
7
8
9
<!-- 配置登陸過濾器 -->
<filter>
  <filter-name>login</filter-name>
  <filter-class>com.jingxing.oa.filter.LoginFilter</filter-class>
 </filter>
 <filter-mapping>
  <filter-name>login</filter-name>
  <url-pattern>/*</url-pattern>
</filter-mapping>

b.如果是某一個目錄(如a/目錄)整個目錄下的文件都需要登陸驗證:

?
1
2
3
4
5
6
7
8
9
<!-- 配置登陸過濾器 -->
 <filter>
  <filter-name>login</filter-name>
  <filter-class>com.jingxing.oa.filter.LoginFilter</filter-class>
 </filter>
 <filter-mapping>
  <filter-name>login</filter-name>
  <url-pattern>/a/*</url-pattern>
 </filter-mapping>

以上所述是小編給大家介紹的Java web過濾器驗證登錄防止未登錄進入界面,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對服務器之家網站的支持!

原文鏈接:http://blog.csdn.net/kpchen_0508/article/details/41088827

延伸 · 閱讀

精彩推薦
601
主站蜘蛛池模板: 午夜啪视频 | 欧美一区在线观看视频 | 欧美日韩免费一区 | 国产91片| 超碰97在线人人 | 亚洲国产色婷婷 | 成人福利免费在线观看 | 男女无套免费视频 | 国产一国产一级毛片视频在线 | www.99re14.com| 国产一区二区三区视频在线观看 | 亚洲5区| av不卡免费观看 | 亚洲一区在线观看视频 | 天天色图片 | 韩国一级免费视频 | 久久成年网站 | 成人黄色免费电影 | 亚洲综合中文 | 成年人网站视频免费 | 国产成人强伦免费视频网站 | 圆产精品久久久久久久久久久 | 久久精品视频3 | 国产精品欧美久久久久一区二区 | 射逼网站 | 午夜精品老牛av一区二区三区 | 成人不卡在线观看 | 国产精品九九久久一区hh | 精品国产一区二区三区久久久蜜 | 亚洲福利在线视频 | 欧美一级做a | 狠狠干伊人网 | 激情网站免费观看 | 欧美伦交 | 日韩在线激情 | 在线视频 欧美日韩 | 一本到免费视频 | 国产精品一区视频 | 久久久综合视频 | 国产精品一区二区三区在线播放 | 精品视频在线免费看 |