实验五 会话管理一、实验目的1。 了解 Web 服务器对客户跟踪的各种方法;2. 重点掌握使用 HttpSession 对象跟踪会话的方法; 3。 掌握使用 Cookie 技术跟踪会话的方法;4。 了解 URL 重写和隐藏表单域的方法。二、实验原理HTTP协议是无状态的协议.在很多情况下,Web服务器必须能够跟踪客户的状态。比如,对于一个购物网站,在一个时刻可能有多个客户购物,Web服务器必须能够区分不同的客户.一般情况下,Web服务器为每个客户配置了虚拟的购物车(ShoppingCart)。当某个客户请求将一个商品放入购物车时,Web服务器必须根据发出请求的客户的身份,找到该客户的购物车,然后把商品放入其中。Web服务器跟踪客户的状态通常有4种方法:(1)使用HttpSession对象管理会话;(2)使用持久的Cookie对象;(3)使用URL重写机制;(4)使用隐藏的表单域。三、实验内容与步骤(一) 使用 HttpSession 对象管理会话。【步骤 1】建立 Servlet 对象,代码如下:package cn。edu.session.servlet;import java。io。IOException;import java。io。PrintWriter;import javax。servlet.ServletException;import javax。servlet.http.HttpServlet;import javax。servlet。http。HttpServletRequest;import javax。servlet。http。HttpServletResponse;import javax.servlet。http。HttpSession;public class LoginServlet extends HttpServlet {public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {request。setCharacterEncoding("utf—8");response。setContentType("text/html;charset=utf-8”);String username = request。getParameter(”username”);if(username。equalsIgnoreCase(”zhangsan”)) {response.getWriter()。print("用户名或密码错误!");} else {HttpSession session = request.getSession();session.setAttribute(”username”, username);response.sendRedirect("/prac05_session/index1。jsp”);}}}【步骤 2】修改 web。xml 文件,添加代码如下:〈servlet〉〈servlet—name〉LoginServlet〈/servlet-name〉〈servlet—class>cn。edu。session.servlet。LoginServlet〈/servlet—class〉