《基於SSM的登錄驗證功能實現》論文筆記
一、基本信息
-
標題:基於SSM的登錄驗證功能實現
-
來源:武漢軟件工程職業學院 湖北 武漢
-
關鍵字:登錄驗證;Spring MVC;MyBatis
二、研究內容
- 設計思想
- 在設計登錄功能的時候,如果是登錄成功的客戶端,會在其對應的session 中放入特定的令牌數據,而未登錄客戶端的session 中是不存在這樣的令牌數據。基於這一點,登錄驗證的基本思想是在處理客戶端請求某個資源前,先判斷session 中是否存在特定的令牌數據,如果存在就讓服務器繼續執行請求,否則就將請求攔截下來,將客戶端頁面內容轉到登錄頁面。

- 登錄驗證攔截器實現
- 當客戶端請求到達服務器時,SpringMVC 框架會根據配置將請求交給攔截器的preHandler 方法進行處理。在該方法中會先通過request 對象取到當前請求的統一資源定位符,判斷是不是在請求登錄方法“/login.action”,如果是請求登錄方法就不需要進行攔截,因為這個時候客戶端明顯是一個未登錄用戶,其session 中不會存在令牌USER_INFO,如果此時還進行攔截跳轉登錄頁面就會形成一個操作上的死循環。如果不是請求登錄方法,則攔截器代碼通過HttpSession 對象獲取其中的令牌USER_INFO,判斷其結果是否為空可以知道當前的請求客戶端有沒有登錄過,如果登錄過就不進行攔截,否則的話通過服務器內部轉發的方式返回登錄頁面。
- 登陸實現
-登錄驗證另外一個重點就是登錄功能的實現,登錄功能負責在用戶登錄成功的時候將令牌寫入session,如果沒有這一步登錄攔截器也無法起作用。
三、結論
- 登錄驗證功能是權限系統里面最基本的功能,其核心思想是通過攔截器在請求資源前攔截請求進行登錄驗證。在此思想上可以進一步擴展出復雜的權限控制功能,例如登錄用戶必須具備特定的權限才能對資源進行訪問等等。
四、參考文獻
- [1]李文蕙,劉嵩.基於SSM的登錄驗證功能實現[J].電腦迷,2018,(12):227. DOI:10.3969/j.issn.1672-528X.2018.12.204.
