JavaWeb_day05cookie_session_HttpSession
本文为博主辛苦总结,希望自己以后返回来看的时候理解更深刻,也希望可以起到帮助初学者的作用.
转载请注明 出自 : luogg的博客园 谢谢配合!
两个会话的技术cookie session
会话概念 : 打开浏览器,多次访问WEB资源,关闭浏览器,整个过程称为一次会话.
cookie 客户端技术 不是很安全
session 服务器端技术
session 技术
创建之后,访问
关闭浏览器之后.session销毁,
同一个名字,不同的value,最后的会覆盖之前的
- cookie基于客户端,不安全,并且大小和个数的限制。
- void setAttribute(String name, Object value)
- Object getAttribute(String name)
- String getId() 获取seesion的唯一的ID
- void invalidate() 销毁的seesion
- void removeAttribute(String name) 从会话中删除name的属性值,若不存在不会执行
- void setMaxInactiveInterval(int seconds) 允许客户请求的最长时间
====
session的创建和销毁
- 第一次访问资源,调用request.getSession(),创建session
- 销毁
- 非正常关闭服务器()
- session的过期,Tomcat默认是30分钟。(用户的发呆时间)
调用session.invalidate()手动销毁session
session属性的默认保存时间为30min,如果要修改,可以在web.xml和程序中进行修改以Tomcat为例,Tomcat --> conf --> web.xml --> <session-fonfig> --> <session-timeout> 在程序中修改用 : setMaxInactiveInterval(int val)单位:秒
session 可以用来做什么
1.网上商城中的购物车。
2.保存登录的用户信息。
3.将某些数据放入到session中,供同一用户的各个页面使用。
4.防止用户非法登录到某个页面
HttpSession 生命周期
1、客户端向服务器第一次发送请求的时候,request中并无SessionID
2、此时服务器会创建一个Session对象,并分配一个SessionID。Session对象保存在服务器端,此时为新建状态,调用session.isNew()返回true。
3、当服务器端处理完毕后,会将SessionID通过response对象传回到客户端,浏览器负责保存到当前进程中。
4、当客户端再次发送请求时,会同时将SessionID发送给服务器。
5、服务器根据传递过来的SessionID将这次请求(request)解析
6、循环执行过程3-5,直到Session超时或销毁
JavaWeb_day05cookie_session_HttpSession的更多相关文章
随机推荐
- 统计iOS项目的总代码行数的方法
打开终端, 用cd命令 定位到工程所在的目录,然后调用以下命名即可把每个源代码文件行数及总数统计出来: find . "(" -name "*.m" -or - ...
- BPM流程中心解决方案分享
一.需求分析 在过去办公自动化的浪潮中,很多企业已经实施了OA流程,但随着客户的发展和对流程管理的越来越重视, 客户对流程应用需求越来越深 入,您可能面临以下需求: 1.流程功能不能满足需求,包括流程 ...
- μCos-ii学习笔记1_概述
一.μCos-ii _概述 网上关于μCosii的文章多不胜数,本人学习的过程中也参考了很多人的理解和想法,看的是卢有亮老师的<嵌入式实时操作系统-μC/OS原理与实践>(第2版),同时也 ...
- 读过MBA的CEO更自私?《哈佛商业评论》2016年第12期。4星
老牌管理杂志.每期都值得精度.本期我还是给4星. 以下是本书中的一些内容的摘抄: 1:他们发现在Airbnb上,如果客人姓名听起来像黑人,那么比名字像白人的客人的接受率会低16%.#45 2:对立组织 ...
- oracle 存储过程
来自:http://www.jb51.net/article/31805.htm Oracle存储过程基本语法 存储过程 1 CREATE OR REPLACE PROCEDURE 存储过程名 2 I ...
- Mono下的WCF的Bug?
最近一段时间,一直在折腾Mono,折腾Linux.让我无比痛苦的是Mono下的WCF的坑真的是太多了,这不又遇到了一个莫名其妙的问题. 环境:mono 3.2.1,Jexus 5.4.3,OS Cen ...
- mono for android学习过程系列教程(5)
这一讲主要需要了解的安卓UI元素是Spinner.这个元素类似我们 winform和webform里面的下拉选项. 首先我们先建立一个新的项目,命名为SpinnerExample. 然后在Layout ...
- 在C#代码中应用Log4Net系列教程(附源代码)
Log4Net应该可以说是DotNet中最流行的开源日志组件了.以前需要苦逼写的日志类,在Log4Net中简单地配置一下就搞定了.没用过Log4Net,真心不知道原来日志组件也可以做得这么灵活,当然这 ...
- 学会使用Spring注解
概述 注释配置相对于 XML 配置具有很多的优势: 它可以充分利用 Java 的反射机制获取类结构信息,这些信息可以有效减少配置的工作.如使用 JPA 注释配置 ORM 映射时,我们就不需要指定 ...
- 基于Cat的分布式调用追踪
Cat是美团点评出的一款APM工具,同类的产品也有不少,知名的开源产品如zipkin和pinpoint:国内收费的产品如oneapm.考虑到Cat在互联网公司的应用比较广,因此被纳入选型队列,我也有幸 ...