Cookie和Session

来源:互联网 发布:迅捷路由器的访客网络 编辑:程序博客网 时间:2024/06/07 05:56

1:Cookie:

1) Cookie

在会话中浏览器和服务器会产生一些共享数据,然后cookie是将数据保存在浏览器中,Session是将数据保存在服务器中;

Cookie c = new Cookie("name","value") ; Cookie中的创建对象

Cookie是在服务器中创建的,然后通过response对象发送给浏览器,响应头携带数据

浏览器会自发的把数据存储起来,方便下一次给服务器发送数据

然后服务器可以根据请求来获取cookie: request.getCookies();

2) 细节

cookie中如果有中文,需要进行加密和解密操作,

加密:  URLEncoder.encode("value","charset");

解密: URLDecoder.decode("value","charset");

setMaxAge(int num);  如果参数是正数,表示多少秒后cookie就会自己消失

如果参数是负数,表示关闭浏览器后,cookie消失.

如果参数是0,表示删除这个同名的cookie;

setPath("uri");  设置这个cookie的有效路径, 设置这个cookie的作用的路径,默认的是当前的路径

setValue("value") ;  设置这个cookie的值,但是必须要在response.addCookie() 之前执行,否则没有作用;

2:Session:

1) Session的特点:

Session是存在服务器中的,Session是没有数据大小的限制,Session对数据类型也没有限制,相对安全,

创建一个Session  :  request.getSession() ; 如果没有Session,则会创建一个

request.getSession(true) ; 如果没有就会创建一个Session;  request.getSession(false); 获取Session,如果没有,则会返回null ;

2) 获取数据

session.setAttribute();  设置数据    session.getAttribute("name");  获取该session的值

在创建session时,服务器会给浏览器发送一个cookie,存储的是JESSIONID,所以当访问session的时候,会根据

浏览器中cookie中的数据来进行反馈,如果没有,则会返回null;

setMaxInactiveInterval(int num) ;  设置这个Session的有效时间 秒

在web.xml文件中设置Session的全局时间 <Session-Config> <Session-timeout>1</Session-timeout>  </Session-Config>

里面设置时间,单位是分钟;

手动销毁Session :   session.invalidate(); 销毁Session

Session是一直在服务器中,而JESSIONID会随着浏览器的关闭而消失,所以可以设置JESSIONID的时间,

来让Session不会随着浏览器的关闭,而丢失.

阅读全文
'); })();
0 0
原创粉丝点击
热门IT博客
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 跑步胃难受怎么办 跑步时胃疼怎么办 运动后胃疼怎么办 跑步胃疼怎么办 跑步后胃疼怎么办 吃凉饭胃不舒服怎么办 跑步慢怎么办 跑步机“异响”怎么办 脚麻十分钟怎么办 跑完步腿酸痛怎么办 英语考试紧张怎么办 外科医生手抖怎么办 科三紧张怎么办 签字手抖怎么办 就害怕签字怎么办 干活动作慢怎么办 上台紧张发抖怎么办 六岁有点咳嗽怎么办 跳绳耐力不够怎么办 耐力不够怎么办 淋浴开关漏水怎么办 深蹲时硬了怎么办 鼻炎每天流鼻涕怎么办 冰箱门胶条松了怎么办 吸入酸性气体怎么办 实验台共振怎么办 电梯年检不合格怎么办 数学选做题没涂怎么办? 脑子很乱怎么办 不等式无解怎么办 孩子几何不好怎么办 初中几何不好怎么办 高中几何不好怎么办 儿子数学不好怎么办 三年级几何不好怎么办 证明题很差怎么办 成考没过怎么办 分析化学学不好怎么办 小儿不爱学习怎么办 高中数学遇到瓶颈怎么办 大学毛概挂科了怎么办