我有一個包含登錄表單的login.jsp頁面。一旦登錄,用戶將被帶到index.jsp,這個index.jsp應該知道哪個用戶登錄了。如果用戶刷新頁面,他將保持登錄狀態,不會被帶回到login.jsp。所以需要進行某種會話。我搜索了一個例子,發現了Java bean,但實際上並沒有理解它。有人可以幫助我,而不是必需的Java bean。在.jsp中登錄系統
在此先感謝=]
我有一個包含登錄表單的login.jsp頁面。一旦登錄,用戶將被帶到index.jsp,這個index.jsp應該知道哪個用戶登錄了。如果用戶刷新頁面,他將保持登錄狀態,不會被帶回到login.jsp。所以需要進行某種會話。我搜索了一個例子,發現了Java bean,但實際上並沒有理解它。有人可以幫助我,而不是必需的Java bean。在.jsp中登錄系統
在此先感謝=]
這可以通過使用會話對象來完成:
<%
String name = "testme";
session.setAttribute("theName", name); //write as an attribute in the session object
%>
一段時間後,你可以這樣做:
<% String name= session.getAttribute("theName")%> // retireve the attribute from the session
檢查這裏進行了簡單的介紹: http://www.jsptut.com/Sessions.jsp
我會盡力..謝謝=] – 2010-10-08 08:56:08
使用request.getSession()
開始一個新的會話。您可以在整個會話中保存(使用setAttribute
方法)您自己的Java對象。
錯誤你不應該需要這個,是嗎?會話對象總是在JSP頁面中作爲名稱爲「session」的變量提供 - >因此不需要request.getSession(),您可以直接尋址「會話」 – fasseg 2010-10-08 08:53:55
這取決於他是否希望在servlet中或在JSP ... – 2010-10-08 09:00:18
一旦用戶已經登錄,您應該在會話中添加某些內容(如用戶名),以指示用戶已登錄。
然後,您可能希望添加一個servlet篩選器,該篩選器通過檢查會話上的用戶名來檢測請求是否來自登錄的人。如果此人未登錄,您的過濾器可將請求發送至您的login.jsp,而不是他們請求的實際頁面。使用這樣的過濾器意味着您不必在JSP頁面中編寫任何登錄檢測和重定向。
最後,你可能想提供殺死與session.invalidate();
會話這是一個非常模糊的問題註銷選項。看看一些教程,嘗試一些例子,讓我們知道你在哪裏堅持下去。提示:嘗試搜索「jsp servlets +會話管理+教程」 – bdhar 2010-10-08 08:52:19