我是Java編程的新手,我試圖用JNDI實現方法開發一個帶有Struts2,JSP和jQuery的Web應用程序,並通過手動JDBC連接到PLSQL。Struts2 SessionAware&ServletRequestAware
我想了解如何在Struts 2中實現會話管理。我看到一些例子,其中Action類實現了SessionAware攔截器,如this和另一個example,其中實現了ServletRequestAware攔截器。
有人可以向我解釋使用哪種方法。這兩者之間的區別是什麼,你會使用哪些,爲什麼?我的要求很簡單。我有一個完全基於登錄的Web應用程序。因爲只有登錄頁面是公開的,而且全部都在用戶身份驗證之下。有2個用戶角色 - 管理員和常規。基於登錄角色,它們被定向到僅爲管理員的第1,2頁或只是通用的第3,4頁。我如何在Struts2中使用會話管理概念來實現這一點?
謝謝!
因此,我使用ServletRequestAware進行大部分數據庫操作和SessionAware來維護我的用戶日誌信息和其他我想通過「用戶會話與Web應用程序」保持的事情。 **你可以給我一個例子,說明如何使用你提到的方法實現登錄,攔截器和將用戶對象添加到會話中。** – rr87
@ rr87這是一個問題嗎?你幾乎不需要*需要ServletRequestAware,它將你的行爲與servlet規範聯繫起來,使得幾乎所有的事情都不必要的刺激。我不知道什麼是HttpServletRequest與數據庫操作。 –
嗯,這是一個基於這裏的另一個問題的答案的假設[鏈接](http://stackoverflow.com/questions/4640721/servlets-setattribute-in-httpservletrequest-vs-setattribute-in-httpsession) – rr87