• cookie 和 session 的使用


    cookie是由服务器端创建(new Cookie()),存储在客户端浏览器上的文件,用来跟踪客户端和服务器之间的会话,cookie的安全性能较低,并且存储的最大数据不能超过4k。不支持跨一级域名访问,但是可以跨二级域名访问。
    分为状态cookie和持久化cookie,状态cookie会在用户关闭浏览器时自动销毁。持久化cookie存储在用户硬盘中,设置的失效时间,到达时间后,系统会自动删除该文件,导致持久化cookie失效。

    Cookie使用

    Cookie 对于存储内容是基于明文的方式存储的,所以安全性很低。不要在 Cookie 中存 放敏感数据。在数据存储时,虽然在 Servlet4.0 中 Cookie 支持中文,但是建议对 Cookie 中 存放的内容做编码处理,也可提高安全性。

    Session

    session时在服务器创建并存储在服务器上的,创建时间取决于我们什么时候调用getSession()或getSession(true)方法。安全性能较高。
    原则上session的存储大小不受限制,但是因为会占用服务器内存,如果session数量级过大,对服务器性能有影响。
    session的销毁形式有两种,调用invalidate()方法和设置失效时间,

    Session 使用

    HttpSession 对象是保存在服务端的,所以安全性较高。我们可以在 HttpSession 对象中 存储数据,但是由于 HttpSession 对象的生命周期不固定,所以不建议存放业务数据。一般 情况下我们只是存放用户登录信息。

    cookie和session的关系:

    session对象创建后,会生成一个sessionID放到cookie中,客户端每次向服务器端发出请求时,会把所有的请求信息和sessionID放到cookies中发送到服务器端,服务器端通过解析cookie对象,如果包含sessionID,服务器端会将和sessionID向对应的session取出。如果没有对应的session ID,服务器端会重新创建一个session对象。因为cookie记录着sessionID,如果cookie被销毁,服务器端对应的session将失效。因为cookie中的sessioID被销毁,客户端下次请求时就不再是之前的sessionID

    悲观者正确,乐观者成功
  • 相关阅读:
    [轉]mysql命令大全
    [轉]常用MYSQL管理工具收集windows
    [轉]Oracle 数据类型及存储方式
    [轉]mysql函数集
    [轉]Mysqldump备份还原和mysqldump导入导出语句大全详解
    JavaScript定义类的几种方式
    [轉]NoSQL数据库探讨之一 - 为什么要用非关系数据库?
    FLV文件介绍
    XAMPP维基百科,自由的百科全书
    [轉]dom table
  • 原文地址:https://www.cnblogs.com/freebule/p/14462765.html
Copyright © 2020-2023  润新知