• session与cookie


    session定义:

        在计算机中,尤其在网络应用中,称为“会话”。具体到web中的session指的是用户在浏览某个网站时,从进入网站到浏览器关闭所经过的这段时间,也就是用户浏览这个网站所花费的时间。

    session工作原理:

    1、当一个session第一次被启用时,一个唯一的标识被存储在本地的cookie中;

    2、首先使用session_start()函数,PHP从session仓库中加载已经存储的session变量;

    3、当执行PHP脚本时,通过使用session_register函数注册session变量;

    4、当PHP脚本执行结束时,未被销毁的session变量会被自动保存在一定路径下的session库中,这个路径可以通过php.ini文件中的session.save_path指定,下次浏览网页时可以加载使用。

    session的用法:

    1、获取session对象;

    2、给session设置值;

    3、获取session中的值;

    4、删除session中的值。

    session的优缺点:

    优点:安全性高

    缺点;增加服务器压力

    session的销毁原因:

    1、服务器非正常关闭;

    2、session(20分钟)过期。

    session的过期时间(20分钟)设置;

    1、在Tomcat中的con/web.xml中设置(单位:分钟)

    2、在项目的web.xml中设置(单位:分钟)

    3、在Java代码中设置(单位:秒)

    session与cookie的区别;

    1、cookie数据存放在客户的浏览器上,session数据存放在服务器上;

    2、cookie不是很安全,别人可以分析存放在本地的cookie并进行cookie欺骗,考虑到安全性应该使用session;

    3、session会在一定时间内保存在服务器上,当访问增多时会比较影响服务器性能,考虑到减轻服务器压力方面,应当使用cookie;

    4、单个cookie在客户端的闲置是3k,也就是一个站点在客户端存放的cookie不能超过3k。

    对于session和cookie,个人建议:

       将登陆信息等重要信息存放在session

       其他信息如需保留,可以存放在cookie

  • 相关阅读:
    【006期】JavaSE面试题(六):泛型
    【005期】JavaSE面试题(五):String类
    【004期】JavaSE面试题(四):JavaSE语法(3)
    【003期】JavaSE面试题(三):JavaSE语法(1)
    【002期】JavaSE面试题(二):基本数据类型与访问修饰符
    【001期】 | JavaSE面试题(一):面向对象
    【000期】Java最全面试题库思维导图
    LeetCode 1. 两数之和(python3)实现
    虚拟网络学习笔记一:Linux虚拟网络
    快速排序(python实现)
  • 原文地址:https://www.cnblogs.com/zy12/p/8649870.html
Copyright © 2020-2023  润新知