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工具网。

推荐阅读:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/527621.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java 大数四则运算_大数四则运算java(转)

1 //大数的四则运算2 #include 3 #include 4 #include 5 using namespace std;67 classBIGINTEGEROPERATIONS8 {9 private:10 static intCOMPARE(string number1, string number2)11 {12 intj;1314 int length1 number1.size();15 int length2 number2.size();1617 if(number1.…

http参数自动转换java接口参数设置_Springmvc请求参数类型转换器及原生api代码实例...

一、springmvc的xml配置文件xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xmlns:context"http://www.springframework.org/schema/context"xmlns:mvc"http://www.springframework.org/schema/mvc"xsi:schemaLocation"http://www.s…

java构建json_Java构造和解析Json数据的两种方法详解一

在www.json.org上公布了很多JAVA下的json构造和解析工具,其中org.json和json-lib比较简单,两者使用上差不多但还是有些区别。下面首先介绍用json-lib构造和解析Json数据的方法示例。用org.son构造和解析Json数据的方法详解请参见我下一篇博文&#xff1a…

python perl lisp,是否可能像python中的perl的lvalue或lisp的setf一样?

In lisp you can say:(setf (aref a 1) 5)In perl you can say:substr( $string, $start, $stop ) ~ s/a/b/gIs it possible something like this in python? I mean is it possible to use function result as a lvalue (as a target for assignment operation)?解决方案No.…

java final被覆盖_java中的final的使用

1、final类不能被继承,因此final类的成员方法没有机会被覆盖,默认都是final的。在设计类时候,如果这个类不需要有子类,类的实现细节不允许改变,并且确信这个类不会再被扩展,那么就设计为final类。(什么时候…

java jaxb注解xmlnull_java – 将空值表示为xml jaxb中的空元素

我强烈建议使用不存在节点或xsi&#xff1a;nil “true”属性来表示null.这最适用于模式验证(即< age />或< age>< / age>不是xsd&#xff1a;int类型的有效元素.但是,如果您不能在这里完成您的用例&#xff1a;标准JAXB行为import javax.xml.bind.annotatio…

wordcount.java_mapreduce中wordcount的java实现

用java模拟词频统计。有3个文件&#xff1a;text1: hello worldtext2:hello hadooptext3:hello mapreduce对上面的文件进行词频统计&#xff1a;结果应该是&#xff1a;hello:3; hadoop:1; world:1; mapreduce:1代码实现如下&#xff1a;package count;import java.ut…

java applog_java - 通过Logback登录到App Engine request_log - SO中文参考 - www.soinside.com

我当前部署的当前Logback配置如下(您可以说我的构想已耗尽...)&#xff1a;%-4relative [%thread] %-5level %logger{35} - %msgapplication.logWARNtech.provingground.dive_overwatch.etc.logging.enhancers.TestEnhancer%-4relative [%thread] %-5level %logger{35} - %msg查…

java生成pdf怎么合并行或者列_Java基础之PDF文件的合并

1、首先下载一个jar包&#xff1a;pdfbox-app-1.7.1.jar2、代码如下&#xff1a;package com;import java.io.File;import java.io.IOException;import org.apache.pdfbox.util.PDFMergerUtility;/*** PDF格式的图片合并**/public class PdfBox {private static String[] getFi…

java 迭代器的原理_java里Iterator的原理

Iterator&#xff1a;迭代器。其实就是集合取出元素的方式&#xff0c;每个容器的数据结构不一样&#xff0c;所以他们存取的方式不一样&#xff0c;具体事项方法不一样&#xff0c;具体实现方法不一样&#xff0c;每个集合都具备取出方式&#xff0c;对于取出这个动作不足以用…

Java里a和b哪个大_Java中 a+=b和a=a+b有什么区别?

在java语言中&#xff0c;ab和aab的主要区别是在运算的精度上。类似的有“- 、 * 、/ 、% ”&#xff0c;这里以ab 与 aab 举例说明一下。1.下面是一串代码&#xff0c;我们试一下aab的形式&#xff1a;public class TestDemo {public static void main(String[] args) {byte a…

java程序回滚之后在哪看_Java在触发事务回滚之后为什么会再一次回到Servlet开始的地方重新走一次流程?...

代码流程前台点击"提交订单"进入BaseServlet.classBaseServlet.class分发至子类OrderServlet.class的submitOrder()方法submitOrder()调用Service层的submitOrder()方法.关键是Service层submitOrder()中使用了事务回滚. 这里调用了Dao层两个方法: fun01()和fun02(), …

java不进入for_为什么阿里巴巴Java开发手册中强制要求不要在foreach循环里进行元素的remove和add操作?...

在阅读《阿里巴巴Java开发手册》时&#xff0c;发现有一条关于在 foreach 循环里进行元素的 remove/add 操作的规约&#xff0c;具体内容如下&#xff1a;错误演示我们首先在 IDEA 中编写一个在 foreach 循环里进行 remove 操作的代码&#xff1a;import java.util.ArrayList;i…

mysql对测试如何_我如何对MySQL进行基准测试?

我目前正在使用MySQL工作台.我希望看到表中行数增加时性能的差异.我想专门测试并比较1000行,10,000行,100,000行,1,000,000行和10,000,000行.那么,是否有任何工具可以让我这样做并提供有关磁盘I / O,内存使用情况,CPU使用率和完成查询的时间的统计信息&#xff1f;解决方法:是.…

JAVA两个视图层_MVC - 管理帐户 . 一个视图有两个局部视图和两个模型

美好的一天&#xff01;我正在管理帐户页面上&#xff0c;用户可以在其中更改密码和电子邮件 .我有一个管理视图&#xff0c;其中有两个部分视图&#xff0c;更改密码和更改电子邮件 . 这两种都使用两种不同的模型 . 这样做的目的是在同一页面上同时包含更改密码和更改电子邮件…

8086汇编4位bcd码_二进制格雷码与自然二进制码的互换分析

在精确定位控制系统中&#xff0c;为了提高控制精度&#xff0c;准确测量控制对象的位置是十分重要的。目前&#xff0c;检测位置的办法有两种&#xff1a;其一是使用位置传感器&#xff0c;测量到的位移量由变送器经A/D转换成数字量送至系统进行进一步处理。此方法精度高&…

python datetime.datetime 当前_关于datetime:如何让python显示当前时间(东部)

如何让python在东方显示时间&#xff1f;我已经看过了Python文档&#xff0c;但它非常混乱。我使用的是python 3。谢谢。这可能有帮助&#xff1a;stackoverflow.com/questions/117514/&hellip&#xff1b;基本上&#xff0c;在内部使用UTC&#xff0c;并在显示时使用pytz转…

软件工程结构化建模的方法和工具_软件工程系列-结构化设计方法2

本系列文章为笔记&#xff0c;内容根据北京大学《软件工程》MOOC 初始化模块结构图精化的启发式规则常见的启发式规则什么叫做“启发式”根据设计准则&#xff0c;从长期的软件开发实践中&#xff0c;总结出来的规则既不是设计目标&#xff0c;也不是设计时应该普遍遵循的原理常…

java四种权限的高低_Java(四种权限修饰符)

/*Java中有四种权限修饰符&#xff1a;public > protected > (default) > private同一个类(我自己) YES YES YES YES同一个包(我邻居) YES YES YES NO不同包子类(我儿子) YES YES NO NO不同包非子类(陌生人) YES NO NO NO注意事项&#xff1a;(default)并不是关键字“…

安全扫描失败无法上传_Apache Solr 未授权上传(RCE)漏洞的原理分析与验证

漏洞简介Apache Solr 发布公告&#xff0c;旧版本的ConfigSet API 中存在未授权上传漏洞风险&#xff0c;被利用可能导致 RCE (远程代码执行)。受影响的版本&#xff1a;Apache Solr6.6.0 -6.6.5Apache Solr7.0.0 -7.7.3Apache Solr8.0.0 -8.6.2安全专家建议用户尽快升级到安全…