Cookie与Session的区别-总结很好的文章

2017-05-10

cookie机制



它是指服务器为了辨别用户身份、进行会话跟踪而储在客户端上经过加密的数据。它由服务器端生成,发送给浏览器,浏览器将会将它以键值对的形式保存到某个目录下的文本文件内,用户下次请求网页应用时就会发送该cookie给服务器,当然前提是浏览器设置为启用cookie。


它最典型的应用是判定注册用户是否已经登录网页应用系统,这样用户在登录时可能会得到提示,提示内容为是否保留用户信息,以便在下一次进入此网页应用系统时简化登录的手续,自动登录或记住用户名和密码等。另一个应用场合时“购物车”之类的业务处理,不管这个通常采用session进行处理,用户可能会在一点时间内在同一个购物网站的不同页面中选择不同的商品,这些信息都可以写入cookie,以便在最好付款时提取信息。



在网页应用中,cookie可以用于记录登录信息、购买商品信息,存储在浏览器中,方便用户的操作。现在,网页应用可以利用cookie进行跟踪、统计了用户的访问习惯,比如说一般在什么时间访问,具体访问的哪些页面,在每个页面的停留时间等。利用这些信息,一方面可以为用户提供个性化的服务,另一方面,也作为了解用户的行为的工具,这对于网页应用的经营策略该进提供有价值的参考。



为了保护个人的隐私不被非法侵犯,可以通过浏览器进行设置来决定是否启用cookie。



201481983728963.png




session机制



当应用系统接受到客户端浏览器的请求时,首先会检查服务器是否已经为这个客户端创建了session,也就是判断客户端的请求中是否包含了一个sessionID,如果包含,则服务器就会通过它来找到对应的session,以确定是这个客户端访问服务器。而如果客户端的请求中没有ID,服务器会为该客户端创建一个新的session,并且生成一个与它对应的ID,然后随着本次相应返回给客户端。



在客户端没有禁用cookie的情况下,客户端使用cookie来保存session ID,但是如果禁用了,则会自动转化为路径重写的技术实现。



下面说说他们两者的区别:


1、存取方式的不同


cookie存储的是字符串,而session存取的是对象。


2、保存位置的不同


cookie保存在客户端,而session保存在服务器端


3、生命周期的不同


cookie可以通过设置时长来角决定保存的生命周期的长短,而session仅随着会话的结束而关闭


4、存放信息的重要性的不同


cookie保存的一般是用户不太重要的信息,而session保存的是很重要的信息。

蓝桥软件学院Java培训成就您的会联网之路!

上一篇:java的时代,linux命令也没有落下

下一篇:蓝桥软件学院告诉你Java开发的几个注意点