java中session的作用_java中session的工作原理是什么?和Cookies有何区别?
现在大家学习的东西和以前大不相同了,越来越多的人倾向于去学习高新技术以获得更好的发展。java是很多人的第一选择。java中的知识还是很多的,今天就来为大家介绍一下。
首先来说一下java中session的工作原理是什么?
session的工作原理是客户端登录完成之后,服务器会创建对应的session,session创建完之后,会把session的id发送给客户端,客户端再存储到浏览器中。这样客户端每次访问服务器时,都会带着sessionid,服务器拿到sessionid之后,在内存找到与之对应的session这样就可以正常工作了。
然后简述一下,Cookies和session有什么区别?
Cookie和Session都是客户端与服务器之间保持状态的解决方案
一、存储的位置不同,cookie:存放在客户端,session:存放在服务端。Session存储的数据比较安全
二、存储的数据类型不同
两者都是key-value的结构,但针对value的类型是有差异的
cookie:value只能是字符串类型,session:value是Object类型
三、存储的数据大小限制不同
cookie:大小受浏览器的限制,很多是是4K的大小, session:理论上受当前内存的限制,
四、生命周期的控制
cookie的生命周期当浏览器关闭的时候,就消亡了
(1)cookie的生命周期是累计的,从创建时,就开始计时,20分钟后,cookie生命周期结束,
(2)session的生命周期是间隔的,从创建时,开始计时如在20分钟,没有访问session,那么session生命周期被销毁
最后为大家补充一下,一次完整的HTTP请求过程,如下所示:
域名解析-->发起TCP的3次握手-->建立TCP连接后发起http请求-->服务器响应http请求,浏览器得到html代码-->浏览器解析html代码,并请求html代码中的资源(如js、css、图片等)-->浏览器对页面进行渲染呈现给用户。
以上就是关于java中session的工作原理是什么以及它和Cookies有何区别的主要内容了。具体的知识还是比较好理解的。如果你对java知识感兴趣,想要了解更多java基础知识,敬请关注奇Q工具网。
推荐阅读:
java中session的作用_java中session的工作原理是什么?和Cookies有何区别?相关推荐
- java中result的作用_JAVA中的Resultset
JAVA中的Resultset (2012-04-21 14:53:34) 标签: it JAVA中Resultset是一个类 . 结果集(ResultSet)是数据中查询结果返回的一种对象,可以说结 ...
- java 矩形类的作用_java中关于矩形类
创建矩形类Rectangle存储两个顶点坐标(m_x1,m_y1,m_x2,m_y2),构造方法接受2个顶点坐标的值,并调用设置方法setCoordinates将得到的坐标写入对应的属性中,设置方法s ...
- java中write方法作用_java中的封装,继承,多态,这3个在程序中起着重要作用
一.封装 1. 封装概述 面向对象编程语言是对客观世界的模拟,客观世界里成员变量都是隐藏在对象内部的,外界无法直接操作和修改. 封装可以被认为是一个保护屏障,防止该类的代码和数据被其他类随意访问.要访 ...
- java中重写的作用_Java中的重写
如果一个类从它的父类继承了一个方法,如果这个方法没有被标记为final ,就可以对这个方法进行重写. 重写的好处是:能够定义特定于子类类型的行为,这意味着子类能够基于要求来实现父类的方法. 在面向对象 ...
- java中catch的作用_Java中的try catch的作用
http://wenwen.soso.com/z/q175197035.htm try{--}里面是一些你觉得可能会出问题的代码,catch里就是你觉得会有什么问题,如果出的问题正好是你catch里说 ...
- java关键字super的作用_java中super关键字的作用
1.super关键字可以在子类的构造方法中显示地调用父类的构造方法,super()必须为子类构造函数中的第一行. 2.super可以用来访问父类的成员方法或变量,当子类成员变量或方法与父类有相同的名字 ...
- java中generics的作用_java中的Generics(泛型)
从JDK5.0开始出现的泛型(Generics)功能.泛型提供编译时期的检查,不会将对象置于某个容器而失去其类型. 这个是JDK 1.5 的新特性. 举个例子. 一个列表中加入3个数字,然后从 ...
- java中hasnext的作用_java中Scanner的hasNext()的疑问
第一个问题,两段代码的区别在于阻塞的位置不同,加上一行输出代码就可以很明显地看到差别. Test.java import java.util.Scanner; public class Test { ...
- java+session+存在哪_JAVA中Session
会话状态的维持是开发Web应用所必须面对的问题,有多种方法可以来解决这个问题,如使用Cookies,hidden类型的表单域,或直接把状态信息加到URL中等,还有Servlet本身提供了一个HttpS ...
最新文章
- unity3d-----Collider 组件参考
- java 对比两个表的字段的差异_Joolun小程序商城 2.2.2版本上线了——Java微信快速开发平台...
- [vue] 你有使用做过vue与原生app交互吗?说说vue与ap交互的方法
- 澳元兑美元震荡整理,后市可否追高
- labview dll 崩溃
- .NET开发Silverlight程序:界面和对象模型
- Oracle Golden Gate - 概念和机制
- 34步优化sql语句
- 开课吧之Java常见面试题之RandomAccess接口
- 设计一个扩展自抽象类geometricobject_设计模式4之模板方法模式
- JavaScript 中的异步:Event Loop 及其他
- C#毕业设计——基于C#+asp.net+SQL server的房地产信息管理系统设计与实现(毕业论文+程序源码)——房地产信息管理系统
- 谷歌无法加载印象笔记剪辑插件
- 邮箱容量多大?163邮箱发邮件无限容量解读
- Python连接redis实现有序队列queue先进先出/后进先出
- 英伟达发布《永劫无间》最新显卡驱动更新,驱动人生升级教程
- input maxlength 属性不起作用
- 基于H5的Speedtest网速测试工具搭建
- 图像处理里面调色板(Palette)是什么意思?
- brk系统调用和copy-on-write机制
热门文章
- 浅析低功耗广域网及在智慧城市中的应用
- Gartner发布2021年低代码魔力象限,Mendix名列前位
- 数据结构与算法、讲解、动态规划一脸懵?看完之后轻松掌握!
- 奇奇怪怪的知识增加了,大括号的历史你知道吗?
- python苦逼_自学Python编程的第六天(最后代码有更好的请告诉我)----------来自苦逼的转行人...
- mac安装python环境教程_python mac下安装虚拟环境的图文教程
- linux函数进程撤销,Linux进程控制函数
- java怎么配置哨兵模式_redis 哨兵模式配置与spring集成
- 5款神器级别Github 的Chrome插件
- 一、项目管理框架【PMP 】