-1

我有一个登录页面,我在其中输入用户名和密码。我已经setAttribute()在我的 servlet 中使用来设置用户名,在我的 jsp 页面中我使用session.getAttribute()来检索用户名并打印欢迎消息。

这是我在一页中的代码片段:

`<h2>Welcome <%=request.getParameter("uname")%>! Enter the numbers and the operation 
   that you want to perform: </h2>
   <% session.setAttribute("uname",request.getParameter("uname")); %>`

这是在我的另一个jsp页面中:

`<h2>Welcome back <%=session.getAttribute("uname")%>! Enter the numbers and 
       the operation that you want to perform: </h2>`

有了这个,即使我尝试注销并再次登录,它要么说欢迎与以前的用户同名,要么欢迎带有空值。如何清除会话属性或会话本身,以便每次新用户登录时都会说 Welcome *that user* 并且如果同一用户再次登录,它会说 Welcome back?

4

2 回答 2

1

不需要session.removeAttribute() 你可以打电话session.invalidate(),这将删除属性和会话

于 2013-09-20T07:38:41.943 回答
0

session.removeAttribute("attributeName")将从会话中删除属性session.invalidate()并使会话无效。

于 2013-09-20T07:25:23.737 回答