码迷,mamicode.com
首页 > 编程语言 > 详细

传智播客JavaWeb day05-session

时间:2015-03-10 23:04:28      阅读:249      评论:0      收藏:0      [点我收藏+]

标签:

1.session是什么

  1.1 session是一种会话技术  ps:还有一种是cookie

2.session的作用

  2.1 服务器端会话范围内的数据共享

3.session的生命周期

  3.1何时创建    request.getSession()时创建(因为session与cookie有关)

  3.2 销毁(三种销毁方式)

    3.2.1 默认30分钟过期

    3.2.2 写一个方法销毁 invalidate()

    3.2.3 服务器非正常关闭

4.session的钝化与还原

  4.1 钝化

    当服务器正常关闭的时候,内存中的session会保存在一个文件里面(apache服务器是在work工作目录下)

  4.2 还原

    当服务器正常关闭后再次启动时,服务器端未过期的session会恢复到内存中

5.session的原理(JsessionId)

  当客户端与服务器进行会话时,服务器会判断request的cookies中是否包含一个JSessionId的这样一个cookie,如果没有就创建一个,有的话就用来区分用户,操作session 

6.问题:服务器怎么区分当前访问是来自于哪个用户   答:就用利用从客户端传来的JesessionId

7.问题引申(思考):当客户端禁用cookie是怎么办?  答:当客户端禁用cookie后,那么服务器端的session也不能用了,因为session是基于cookie技术实现的;这样基于session的一些功能都不能用了,比如利用session功能实现的购物功能,那么我们要通过其他的方式来识别用户,这是就有url重定向。url重定向是将sessionid写在url里面作为url的参数,同样可以实现区分用户的目的

8.问题:利用session实现购物、付款功能,且当用户关闭浏览器后还能结算

  8.1 知识点:session的应用;session是基于cookie实现的,而普通的cookie是会话级别的当浏览器关闭的时候cookie也就销毁了,现在需求是想当浏览器关闭后再次打开的时候还能进行结算的话,也就是关闭前和再次打开时Jsessionid值是一个,也就是说要把名字为JSessionId的cookie保存到浏览器临时文件中去

9.session举例:购物付款

补充:怎么设置session的timeout时间   java和.net 都是在web配置文件中设置

传智播客JavaWeb day05-session

标签:

原文地址:http://www.cnblogs.com/lihongchen/p/4328588.html

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