使用filter的使用者登陸

2021-08-19 03:47:36 字數 1223 閱讀 1972

過濾器(filter),在web專案中用來驗證使用者是否登陸,我個人感覺是非常適合的(前提是你不想使用security這種的安全認證框架)。

之前在網上看到了一些關於使用filter來進行登陸驗證的文章,都不太全面,有的根本就是在誤導開發者,故在此寫下此文章,供初級開發者學習。

想實現登陸過濾,只需完成兩個工作,乙個是配置檔案(web.xml),乙個是filter實現類的業務邏輯。看似簡單,卻會出現諸多問題。

以下是我專案的部分**:

web.xml

loginfilter

com.***.***c.filter.loginfilter

initurl

loginvalidate.do

loginfilter

/page/*

loginfilter

*.do

這裡的配置,可以看出以下三點資訊:

1,我初始化了乙個變數,名為initurl,值為loginvalidate.do。

2,我想過濾page資料夾下的所有檔案(page下只有jsp檔案)。

3,我想過濾所有的.do結尾的請求。

這裡還需注意以下幾點:

2,/page/*.jsp 這種寫法是錯誤的,這裡只有/page/*和*.jsp這兩種寫法。

3,上面配置檔案中,我攔截了所有的.do請求,這樣就連驗證使用者名稱和密碼的請求也會攔截,所以我init了乙個變數,在filter中將該請求忽略掉。

4,登陸頁面和首頁(不需要過濾的)不要放在page目錄下,之前我把login.jsp放在了page下,結果訪問時出現了」該頁面有多次迴圈重定向「的提示。是因為你不斷訪問

登陸頁面,進入filter後,又被不斷重定向到登陸頁面所致。

loginfilter**:

private string requesturl;

private string initurl;

@override

public void init(filterconfig arg0) throws servletexception

@override

public void dofilter(servletrequest arg0, servletresponse arg1,

filterchain arg2) throws ioexception, servletexception else

}以上**,完成了驗證使用者是否登陸的工作,如果使用者未登陸,會被重定向到登陸頁面。

filter 自動登陸

filter過濾器filter 篩請求的 快速入門 filter攔截之後需要放行才能訪問到相應的資源位址,不然就執行完dofilter方法後停止 public class quickfilter implements filter public void dofilter servletreques...

Filter用作安全登陸

filter用作安全登陸 這篇用filter來做安全登陸,何為安全登陸,簡單點說就是登陸之後才能訪問頁面,不登陸什麼頁面都訪問不了。也可以看出springmvc的 之攔截對controller的訪問,而filter攔截所有的訪問 如下 一 後台 二 配置 在web.xml中配置 myfilter c...

ubuntu root 使用者登陸登陸辦法

習慣於圖形化操作的我們,不愛面對一堆的命令的操作,拿想要隨意操作所有東東,就想要提示登入的許可權 以root使用者登入就可以。但是,ubuntu預設並沒有以root使用者登入,so,我們需要做些配置,讓系統再啟動的時候直接以root使用者登入。ubuntu 12.04預設是不允許root登入的,在登...