• Session与Cookie的比较


    前言:javaweb整合开发第五章学习笔记,只是为了加深自己的学习效果。
     
    1.从存取方式上比较
    Cookie中只能保存ASCII字符串,如果需要存取Unicode字符或者二进制数据,需要进行UTF-8等方式编码,Cookie中不能直接存取Java对象。Session可以存取任意类型的数据,Session可以看成一个容器。
    2从隐私安全上比较
    Cookie存储在客户端浏览器中,对客户端是可见的,敏感信息需要加密,Session存储在服务器上,对客户端是透明的。
    3从有效期比较
    Cookie信息可以长期有效,Session理论上也能实现这效果,但是Session依赖于名为JESSIONID的Cookie,而Cookie JSESSIONID的maxAge默认为-1,只要关闭了浏览器Session就会失效,因此Session不能实现信息永久有效的效果。Session超时时间过长,容易导致服务器内存溢出。
    4从对服务器的负担上比较
    Session保存在服务器端,每个用户都可以产生一个Session,Cookie保存在客户端,不占用服务器资源。
    5从浏览器支持上比较
    Cookie是需要客户端浏览器支持的。如果客户端禁用了Cookie,或者不支持Cookie,则会话跟踪会失效。对于WAP上的应用,常规的Cookie就派不上应用了。
    Session以及URL地址重写可以跟踪会话,所有用到Session程序的URL都要使用response.encodeURL(string URL)或者response。encodeRedirectURL(string URL)进行URL重写,否则导致Session会话追踪失败。
    如果客户端支持Cookie,则Cookie既可以设为本浏览器以及子窗口内有效(maxAge设为-1),也可以设为所有浏览器窗口内有效(把maxAge设为某个大于0的整数)但Session只能在本浏览器窗口以及其子窗口内有效。
    6从跨越域名上比较
    Cookie支持跨域名访问,Session不支持,只在他所在的域名内有效。
  • 相关阅读:
    爬虫案例
    伪静态
    HTTP0.9、HTTP1.0、HTTP1.1、HTTP2的区别
    正向代理和反向代理
    数据结构继承
    APP 爬虫
    算法基础
    matplotlib
    Java类加载机制及自定义加载器
    SpringBoot war包部署到Tomcat服务器
  • 原文地址:https://www.cnblogs.com/CaiBaoZi/p/3100856.html
Copyright © 2020-2023  润新知