JSP动态网站设计——>会话管理和使用
简介: 会话跟踪是一种灵活、轻便的机制,他使在页面上的状态编程变成一种可能。HTTP是一种无状态协议,每当用户发出请求时,服务器就做出响应客户端与服务器端之间的联系是离散的,非连续的。当用户在同一网站的多个页面之间转换时,根本无法知道是否为同一个用户,会话跟踪就可以很好的解决这个问题。当一个用户在多个页面切换时,服务器会保存该用户的信息。
掌握会话的概念
掌握会话的管理
掌握常用会话跟踪技术
掌握查询字符串的使用
#一、会话的概念:
从打开一个浏览器访问某个站点,到关闭这个浏览器的整个过程,成为一次会话。会话技术就是记录这次会话中客户端的状态和数据的。会话技术分为Cookie和Session。
Cookie: 数据存储在客户端本地,减少服务器端的存储压力,安全性不好,客户端可以清除Cookie。
Session: 将数据存储在服务器端,安全性相对好,增加服务器的压力。
Cookie:
目标:
怎么创建一个Cookie
怎么响应Cookie到客户端
怎么获取Cookie
设置Cookie的时间
设置Cookie的路径
二、使用步骤
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
this.doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//创建一个Cookie 注意cookie存储的数据不能是中文
Cookie cookie=new Cookie(“name”, “lisi”);
//给cookie设置路径
cookie.setPath("/web01/SendCookieServlet");
//设置cookie保存时间
cookie.setMaxAge(60*100);
//发送cookie
response.addCookie(cookie);
//获取Cookie
Cookie[] cookies = request.getCookies();
String name=null;
String value=null;
for (Cookie coo : cookies) {
name= coo.getName();
value= coo.getValue();
}
System.out.println(name);
System.out.println(value);
}
2、Session概念:
Session技术是将数据存储在服务器端的技术, 会为每个客户端都创建一块内存空间存储客户的数据,但客户端需要每次都携带一个标识ID去服务器中寻找属于自己的内存空间。
所以说Session的实现是基于Cookie的,Session需要借借助于Cookie存储客户的唯一性标识JSESSIONID。
————————————————
目标:
创建(获取)Session request.getDession();
向Session中存/取数据setAttribute("","");/getAttribute();
清除数据session.invalidate();
#session的生命周期:
创建:第一次request.getSession();
销毁:服务器关闭,session默认的生命周期,session.invalidate();
**结语:**以上是对会话跟踪的一些基本介绍后续还会对上面的内容进行更新。