下面是“jsp session.setAttribute()和session.getAttribute()用法案例详解”的完整攻略。
什么是Session?
Session是指浏览器和服务器之间维护的一个会话状态,用于保存用户信息、用户访问状态等。在JSP中我们可以使用session对象来操作session。
session.setAttribute()
session.setAttribute()方法用于往session中添加一个属性或修改已有的属性。其语法如下:
session.setAttribute(String name, Object value);
其中,name为属性名称,value为属性值。下面我们来看一个使用示例:
<%
//存放用户ID和用户名到session中
int userId = 1001;
String userName = "Tom";
session.setAttribute("userId", userId);
session.setAttribute("userName", userName);
%>
以上代码将用户ID和用户名存放到session中,key分别为“userId”和“userName”。
session.getAttribute()
session.getAttribute()方法用于从session中获取已有的属性。其语法如下:
Object obj = session.getAttribute(String name);
其中,name为属性名称,返回值为Object类型。下面是一个使用示例:
<%
//从session中获取用户ID和用户名
int userId = Integer.parseInt(session.getAttribute("userId").toString());
String userName = session.getAttribute("userName").toString();
out.println("用户ID:" + userId + "<br>");
out.println("用户名:" + userName);
%>
以上代码从session中获取用户ID和用户名,然后输出到页面中。
示例说明
例如我们需要实现一个用户登录功能,当用户登录成功后,我们需要将用户信息存放到session中,以便后续的操作。代码示例如下:
<%
//模拟用户登录
String userName = request.getParameter("name");
String password = request.getParameter("password");
if("admin".equals(userName) && "123456".equals(password)){
//登录成功,存放用户信息到session中
int userId = 1001;
session.setAttribute("userId", userId);
session.setAttribute("userName", userName);
//重定向到用户信息页面
response.sendRedirect("userInfo.jsp");
}else{
//登录失败,重定向到登录页面
response.sendRedirect("login.jsp");
}
%>
当用户登录成功后,我们将用户ID和用户名存放到session中,并重定向到用户信息页面。页面代码示例如下:
<%
//从session中获取用户信息
int userId = Integer.parseInt(session.getAttribute("userId").toString());
String userName = session.getAttribute("userName").toString();
%>
<h2>用户信息</h2>
<p>用户ID: <%= userId %></p>
<p>用户名: <%= userName %></p>
页面中通过session.getAttribute()方法获取已存放的用户信息并输出到页面中。
另外,我们还可以使用session.invalidate()方法来销毁session,如下:
session.invalidate();
以上代码将销毁当前会话中的session。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:jsp session.setAttribute()和session.getAttribute()用法案例详解 - Python技术站