• 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不支持,只在他所在的域名内有效。
  • 相关阅读:
    HDU 1124 Factorial
    hdu 1690 Bus System
    hdu 1113 Word Amalgamation
    POJ 2482 Stars in Your Window
    hdu 1385 ZOJ 1456 Minimum Transport Cost(经典floyd)
    hdu 1907 John
    VMware 虚拟机 安装 UBuntu 9.10 命令模式转换成窗口模试
    #pragma CODE_SEG __NEAR_SEG NON_BANKED详解
    Ubuntu 下Hadoop 伪分布式 hadoop0.20.2.tar.gz 的安装
    文件拷贝代码以及疑问
  • 原文地址:https://www.cnblogs.com/CaiBaoZi/p/3100856.html
Copyright © 2020-2023  润新知