filter過濾步驟之自動登入

2021-06-11 14:39:21 字數 997 閱讀 3459

從servlet開始,前面的就是dao,domain,service,utis之類的,挺簡單,從下面說起l

首先獲取文字框的值,因為登陸有效期需要設定一下,cookie的最大有效起,應為int型別,轉換一下型別;

接下來判斷一下,呼叫service類,判斷使用者名稱密碼是否正確,

調dao的方法判斷;返回乙個user類;

如果user不為空的話,

首先把使用者名稱和密碼即ussession域裡;設定一下;

分別為使用者名稱和密碼建立乙個cookie;

設定一下cookie的最大存活時間,setmaxage;把剛才的有效期加入進去

setpath:訪問哪個專案的站點,就是訪問某個專案的站點吧cookie帶過來

然後把cookie放到response的addcookie裡;

登陸成功用重定向跳轉到首頁;sendredirect

為空的話,使用者名稱密碼錯誤,就用**跳轉到乙個jsp頁面去;

接下來就是編寫jsp頁面;

接下來是重點是編寫過濾器:

步驟:首先把請求和響應丟轉換成http的

檢查使用者是否登入;

在session裡進行查詢;返回乙個user;因為剛剛登陸的資訊都在session域裡,

如果user不為空的話,接著執行下乙個過濾器,返回;

如果為空表示沒有登入的話,檢查使用者是否帶cookie

在請求段查詢cookies,返回乙個cookie陣列

然後進行遍歷。判斷cookie的第i個元素的name是否等於username

等於的話,username = cookie的第i個值;

密碼相同;

如果使用者名稱和密碼都為空的話,在進行下乙個過濾器;,然後換回

呼叫service方法,返回乙個user,呼叫user裡的獲取密碼

如果文字框的密碼不等於以儲存的密碼,執行下乙個過濾器,直接返回;

然後設定吧user設定到session域裡,

執行下乙個過濾器;

接著在web.xml新增ok

過濾器Filter 實現 使用者登入的過濾

ps 因為這個過濾器的存在,在登陸之前所有的資源都不能訪問。所以在login.jsp上如果有,js和css,也不能夠正常顯示和工作。可以在過濾器上配置 比如驗證碼 public void dofilter servletrequest req,servletresponse res,filterch...

使用Filter進行 過濾非法登入使用者

很多時候,我們都需要做使用者登入和登入使用者的許可權管理,如何防止沒登入系統的使用者訪問不該訪問的頁面呢?第一種解決辦法,在沒個使用者登入相關的頁面中判定相應的session是否為空,系統比較小該方法還可行?系統比較大呢?上千個頁面呢?難道也要在每個頁面中去判斷嗎?這或許不太可取 第二種,引入fil...

ol之filter過濾獲取feature

ol之filter過濾獲取feature 使用場景 通過geoserver的省界服務查詢對應省的要素,定位到對應位置 sfcode 為省份編碼 注意事項 1.在查詢字段設定錯誤時,可能會報錯 json格式不正確 2.地圖服務中欄位名和查詢欄位中的資料不能為中文。3.http localhost 80...