session和cookie的区别

来源:互联网 发布:下拉框淘宝店铺搜索 编辑:程序博客网 时间:2024/06/06 04:57

经过前几天的复习cookie和session会话技术。今天来总结一下cookie和session的区别在哪里。

首先可以参考cookie博客:http://blog.csdn.net/nihaowoshiyudong/article/details/53535183                       

session服务器端会话技术博客:http://blog.csdn.net/nihaowoshiyudong/article/details/53556619

其实cookie和session的区别主要有五个方面:

①存储的位置不一样。

cookie是存储在浏览器端的。而session是存储在服务器的内存中的。

②安全性不一样

cookie是以明文的方式存储在浏览器端的,所以安全性相对来说很低。

而session是存储在服务器内存中,不是用户能看到的,所以安全性相对来说要高一点。

③网络传输

cookie是需要消耗很多网络资源的,因为没访问一个web应用,浏览器就会在http请求中带上该web应用下的cookie。

而session是在服务器端的,不需要消耗很多的网络资源,只需要在告诉浏览器其JSESSIONID时需要消耗一点网络资

源。在其他情况下都是在服务器端完成的,所以不需要消耗网络资源。

④生命周期不一样

cookie的生命周是累计时间的,比如设置setMaxAge(30),则表示过了30s该cookie就会失效。

而session是间隔休眠时间通过设置setMaxInactiveInterval(30)表示在30s内不访问session,则session会失效。

但是如果在29s时又访问了session,那么其间隔时间又变成30s。同时使session失效的的方式还有如下几种:

(1)服务器被关闭。

(2)reloadweb应用

(3)间隔时间到了

(4)通过调用invalidate()方法来使得session域对象中的属性失效。

⑤使用原则不同

cookie存储在浏览器端,所以不会影响服务器端的运行效率。

而session存储在服务器端的内存中所以会影响服务器的运行效率。一般情况下如果没有必要用session进行存储信息,就避免使用session来存储信息,会造成服务器端运行效率低。

0 0
原创粉丝点击