码迷,mamicode.com
首页 > 其他好文 > 详细

Session机制

时间:2017-08-28 19:57:32      阅读:123      评论:0      收藏:0      [点我收藏+]

标签:url重写   char   html4   session   title   介绍   cookie   body   htm   

一:

1.介绍

  对于会话与状态管理,有两种方式,cookie与session。

  其中,cookie机制采用客户端保持cookie的方案。

  而,session机制采用的是服务器保持Http状态信息的方案。

  

2.响应方式

  以cookie的方式进行实现的。

  浏览器打开,对服务器进行访问,这时因为第一次进行访问,所以没有sessionId,所以服务端会新建一个HttpSession,将sessionId以set-cookie的方式将sessionId返回给浏览器,在这次会话中,浏览器进行下次访问服务端时,会以cookie的方式将返回的sessionId带上,与服务端保存的sessionId进行比较,完成下面的会话。

 

3.保存sessionId的几种方式

  保存sessionId可以采用cookie,这样交互过程中浏览器可以自动根据规则把这个标识发送给服务器。

  因为cookie会被禁用,因此必须有其他的机制能够把sessionId传递给服务器,经常采用的是URL重写,就是将sessionI附加到URL路径的后面。

 

4.Seeion cookie

  session通过SessionId区分不同的客户,以cookie或URL重写为基础的。

  默认使用cookie实现,系统会创造一个名为JSESSIONID的输出cookie,成为session cookie,以区别常说的cookie。

  session cookie是存储在浏览器的内存中,并不写到硬盘上,但是也可以进行持久化写到硬盘。

 

5.持久化程序

  在一段时间内再次打开浏览器,SessionId不会变。

 1 <%@ page language="java" contentType="text/html; charset=ISO-8859-1"
 2     pageEncoding="ISO-8859-1"%>
 3 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
 4 <html>
 5 <head>
 6 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 7 <title>Insert title here</title>
 8 </head>
 9 <body>
10     <%=session.getId() %>
11     <%
12         Cookie cookie=new Cookie("JSESSIONID",session.getId());
13         cookie.setMaxAge(60);
14         response.addCookie(cookie);
15     %>
16 </body>
17 </html>

 

二:session的生命周期

1.

Session机制

标签:url重写   char   html4   session   title   介绍   cookie   body   htm   

原文地址:http://www.cnblogs.com/juncaoit/p/7442115.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!