程序笔记   发布时间:2022-07-13  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了【爆肝一周】面试10多家中大厂后的万字总结——❤️JavaWeb篇❤️(建议收藏)大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

⭐欢迎订阅《大厂面试突击》专栏࿰c;面试10多家大厂总结出的高频面试知识࿰c;免费阶段大家赶快订阅

⭐更多精品专栏简介点这里

⭐更多大厂全路线学习视频+笔记c;PC端看左侧「关于作者」࿰c;手机端「私信」博主。

⭐老规矩࿰c;私信前请先关注࿰c;不然无法回复大家࿰c;感谢支持!

幸福࿰c;不是长生不老࿰c;不是大鱼大肉࿰c;不是权倾朝野。幸福是每一个微小的生活愿望达成。当你想吃的时候有得吃࿰c;想被爱的时候有人来爱你。

前言

哈喽࿰c;大家好࿰c;我是一条。

告诉大家一个消息࿰c;我在7月份又离职了࿰c;离职后我开始疯狂的面试࿰c;一共面了百度、字节、滴滴、美团、陌陌、58同城、汽车之家、元气森林、猿辅导࿰c;掌阅科技࿰c;美术宝、moka等10多家中大厂c;最多的时候一天4面。

【爆肝一周】面试10多家中大厂后的万字总结——❤️JavaWeb篇❤️(建议收藏)

面完之后我发现大厂对于算法的重视程度非常之高࿰c;算法题没做出来࿰c;基本就不会再往下问了࿰c;你“八股文”再溜也没有展现的机会。

所以我开始刷leetcode࿰c;每天一道࿰c;放在了《leetcode》专栏里࿰c;趁着还没有收费࿰c;大家可以抓紧订阅一波。

但算法非一日之功可成࿰c;我们的“八股文”也不能落下。

一条根据多家公司的面试检验࿰c;将高频面试题分门别类的总结出来࿰c;包括java基础篇、javaweb篇、集合篇、jvm篇、多线程篇、框架篇、设计模式篇、数据结构篇、网络篇、操作系统篇、mysql篇、redis篇、kafka篇、ES篇、dubbo篇。Spring cloud篇、企业项目篇c;由浅入深࿰c;到时有可能还会增加。

所有文章都会放在《大厂面试突击》专栏里࿰c;以后会收费࿰c;所以请大家现在抓紧订阅。


本文是❤️javaWeb篇❤️

java Web是用Java技术来解决相关web互联网领域的技术栈。Web就是网页࿰c;分为静态和动态。涉及 的知识点主要包括jsp࿰c;servlet࿰c;tomcatc;httpc;R_924_11845@VC等知识࿰c;由于jsp更偏向前端。本文不做讲解。

本文特别之处

现在网络的面试题资源可以说数不胜数࿰c;但也良莠不齐。

那么࿰c;博主总结的有哪些特别之处呢?

选题

以战养战

相比于逐个知识点的去讲解࿰c;一条更偏向于用面试题的方式呈现࿰c;原因如下:

  • 节省时间࿰c;有很多朋友都是面试前临时抱佛脚࿰c;Helloworld开始讲࿰c;本来不及好吗
  • 重点突出࿰c;有些东西面试官是不会问的࿰c;也没法问࿰c;暂时就可以不看
  • 转换思维࿰c;最重要的一点࿰c;有很多时候这个东西你知道c;但一问就不会࿰c;有没有࿰c;有的评论区扣1

经验之谈

关于选题࿰c;java的知识点又多又杂࿰c;技术更新又很快。所以明白以下几点很重要:

  • 很多技术已经淘汰࿰c;所以就没必要再去看。

  • 有些技术是当下正火࿰c;面试官特别爱问。

  • @R_618_11031@点之间存在关联关系࿰c;问完这个必问那个。

一条凭借面试了10多家大厂的经验总结最高频的知识点࿰c;让你不做无用功࿰c;事半功倍!

解答

  • 文章中大部分题目都是在面试中真实被问到的࿰c;会标明出处。
  • 对知识点的讲解都尽量简单࿰c;用生活中的小事举例说明。
  • 除了知识点讲解࿰c;还会说明这道题的点是哪࿰c;怎么回答更加分。
  • 会从一道题延伸出多道题࿰c;理清关联关系࿰c;题目的顺序都是精心排列࿰c;由浅入深。

题目合集

文章目录

    • 前言
    • 本文特别之处
      • 选题
        • 以战养战
        • 经验之谈
      • 解答
    • 题目合集
      • http网络请求方式有哪些?
      • GET和POST有什么区别?
      • 什么是幂等性?
      • 如何保证幂等性?
        • insert前SELEct
        • 加锁
        • 唯一索引
        • Token
      • 常见的网络状态码有哪些?
        • 1xx(信息性状态码)
        • 2xx(成功状态码)
        • 3xx(重定向状态码)
        • 301和302的区别?
        • 4xx(客户端错误状态码)
        • 5xx(服务器错误状态码)
      • 转发和重定向有什么区别?
        • 转发
        • 重定向
      • 什么是跨域?如何解决跨域问题?
        • 什么是跨域?
        • 解决方案
      • 什么是ajax?
      • 什么是Servlet
      • 说一说Servlet的生命周期
      • 比较一下Listener和Filter/Servlet的区别
      • 拦截器和过滤器的区别
      • Jsp有哪些内置对象?作用分别是什么?
      • jsp和servlet的区别、共同点、各自应用的范围?
      • tomcat容器是如何创建servlet类实例?用到了什么原理?
      • 如何解决请求和响应的乱码问题
        • 请求
        • 响应
      • session、cookie、token都是什么?
      • @H_752_70@mVC与三层架构
        • @H_752_70@mVC
        • 三层架构
      • 说说你对JSON的理解
      • 接口间基于JSON传输数据有什么好处?
      • 什么是单点登录
      • 在单点登录中࿰c;如果cookie被禁用了怎么办?
    • 最后

http网络请求方式有哪些?

出自moka、美术宝

相信这个问题都难不倒大家࿰c;但很多人答不全。

如果能回答出应用场景就完美了。

  • GET:最常用的方式࿰c;用来向服务器请求数据࿰c;没有请求体࿰c;请求参数放在URL后面。
  • POST:用于向表单提交数据࿰c;传送的数据放在请求体中。
  • PUT:用来向服务器上传文件࿰c;一般对应修改操作࿰c;POST用于向服务器发送数据࿰c;PUT用于向服务器储存数据。没有验证机制࿰c;任何人都可以操作࿰c;存在安全问题。具有幂等性。
  • deletE:用于删除服务器上的文件࿰c;具有幂等性。同样存在安全问题。
  • HEAD:用HEAD进行请求服务器时࿰c;服务器只返回响应头࿰c;不返回响应体。与GET一样没有请求体࿰c;常用于检查请求的URL是否有效。
  • PATCH:对资源进行部分修改。与PUT区别在于࿰c;PUT是修改所有资源࿰c;替代它࿰c;而PATCH只是修改部分资源。
  • TRACE:用来查看一个请求࿰c;经过网关࿰c;代理到达服务器࿰c;最后请求的变换。因安全问题被禁用。
  • OPTIONS:当客户端不清楚对资源操作的方法࿰c;可以使用这个c;具有幂等性。

GET和POST有什么区别?

高频必

  1. 作用不同:GET 用于获取资源࿰c;而 POST 用于传输实体主体。
  2. 参数位置不一样: GET 的参数是以查询字符串出现在 URL 中࿰c;而 POST 的参数存储在实体主体中。然GET的参数暴露在外面࿰c;但可以通过加密的方式处理࿰c;而 POST 参数即使存储在实体主体中࿰c;我们也可以通过一些抓包工具如(Fiddler)查看。
  3. 幂等性:GET是幂等性࿰c;而POST不是幂等性。(面试官紧接着可能就会问你什么是幂等性?如何保证幂等性?)
  4. 安全性:安全的 http 方法不会改变服务器状态࿰c;也就是说它只是可读的。 GET 方法是安全的࿰c;而 POST 却不是࿰c;因为 POST 的目的是传送实体主体内容࿰c;这个内容可能是用户上传的表单数据࿰c;上传成功之后࿰c;服务器可能把这个数据存储到数据库中࿰c;因此状态也就发生了改变。

什么是幂等性?

是否具有幂等性也是一个http请求的重要关注点。

幂等性:指的是同样的请求不管执行多少次࿰c;效果都是一样࿰c;服务器状态也是一样的。具有幂等性的请求方法没有副作用。(统计用途除外)

如何保证幂等性?

假设这样一个场景:有时我们在填写某些form表单时࿰c;保存按钮不小心快速点了两次࿰c;表中竟然产生了两条重复的数据࿰c;只是id不一样。

这是一个比较常见的幂等性问题࿰c;在高并发场景下会变得更加复杂࿰c;那怎么保证接口的幂等性呢?

insert前SELEct

插入数据前先根据某一字段查询一下数据库࿰c;如果已经存在就修改࿰c;不存在再插入。

加锁

加锁可解决一切问题࿰c;但也要虑并发性。

主要包括悲观锁࿰c;乐观锁࿰c;分布式锁。

悲观锁的并发性较低࿰c;更适合使用在防止数据重复的场景࿰c;注意幂等性不光是防止重复还需要结果相同。

乐观锁可以很高的提升性能࿰c;也就是常说的版本号。

分布式锁应用在高并发场景࿰c;主要用redis来实现。

唯一索引

通过数据库的唯一索引来保证结果的一致性和数据的不重复。

Token

两次请求࿰c;第一请求拿到token࿰c;第二次带着token去完成业务请求。

常见的网络状态码有哪些?

出自美术宝

此题查的是你有没有实际解决bug的经验和能力。不知道对应网络状态码的含义࿰c;解决问题的能力就会受到怀疑。

应该重点关注同一系列之间的区别࿰c;比如504和505什么区别?

网络状态码共三位数字组成࿰c;根据第一个数字可分为以下几个系列:

1xx(信息性状态码)

代表请求已被接受࿰c;需要继续处理。

包括:100、101、102

这一系列的在实际开发中基本不会遇到࿰c;可以略过

2xx(成功状态码)

表示成功处理了请求的状态代码。

200:请求成功࿰c;表明服务器成功了处理请求。

202:服务器已接受请求࿰c;但尚未处理。

204:服务器成功处理了请求࿰c;但没有返回任何内容。

206:服务器成功处理了部分 GET 请求。

3xx(重定向状态码)

300:针对请求࿰c;服务器可执行多种操作。

301:永久重定向

302:临时性重定向

303:303与302状态码有着相同的功能࿰c;但303状态码明确表示客户端应当采用GET方法获取资源。

301和302的区别?

301比较常用的场景是使用域名跳转。比如࿰c;我们访问 http://www.baidu.com 会跳转到https://www.baidu.comc;发送请求之后࿰c;就会返回301状态码࿰c;然后返回一个LOCATIOn࿰c;提示新的地址࿰c;浏览器就会拿着这个新的地址去访问。

302用来做临时跳转比如未登陆的用户访问用户中心重定向到登录页面。

4xx(客户端错误状态码)

400:该状态码表示请求报文中存在语法错误。但浏览器会像200 OK一样对待该状态码。

401:表示发送的请求需要有通过http认证的认证信息。比如token失效就会出现这个问题。

403:被拒绝࿰c;表明对请求资源的访问被服务器拒绝了。

404:找不到࿰c;表明服务器上无法找到请求的资源࿰c;也可能是拒绝请求但不想说明理由。

5xx(服务器错误状态码)

500:服务器本身发生错误࿰c;可能是Web应用存在的bug或某些临时的故障。

502:该状态码表明服务器暂时处于超负载或正在进行停机维护࿰c;现在无法处理请求。

⚠️有时候返回的状态码响应是错误的࿰c;比如Web应用程序内部发生错误࿰c;状态码依然返回200

转发和重定向有什么区别?

上面提到了重定向࿰c;你知道什么是转发吗?

转发

A找B借钱࿰c;B没有钱࿰c;B去问C࿰c;C有钱࿰c;C把钱借给A的过程。

客户浏览器发送http请求,web服务器接受此请求,调用内部的一个方法在容器内部完成请求处理和转发动作,将目标资源发送给客户。

整个转发一个请求࿰c;一个响应࿰c;地址栏不会发生变化࿰c;不能跨域访问。

重定向

A找B借钱࿰c;B没有钱࿰c;B让A去找C࿰c;A又和C借钱࿰c;C有钱࿰c;C把钱借给A的过程。

客户浏览器发送http请求,web服务器接受后发送302状态码响应及对应新的LOCATIOn给客户浏览器,客户浏览器发现是302响应࿰c;则自动再发送一个新的http请求࿰c;请求url是新的LOCATIOn地址,服务器根据此请求寻找资源并发送给客户。

两个请求࿰c;两个响应࿰c;可以跨域。

什么是跨域?如何解决跨域问题?

出自moka

查实际开发中解决问题的能力。

什么是跨域?

跨域是针对浏览器的࿰c;由于浏览器的同源策略不能执行其他网站的脚本。那什么是同源?

同源是指域名、协议、端口均相同。只要有一个不同࿰c;就是跨域。

解决方案

  • JSONP跨域:人们发现调用js文件是不受跨域影响的࿰c;所以通过把数据装进JS来解决跨域问题。JSONP是一段参数是json格式(大多数情况)的JS代码。
  • nginx反向代理
  • HEADERS:通过修改headersAccess-Control-Allow-Origin允许所有人访问。

还有其他解决方案࿰c;但不常用࿰c;实际开发都是基于springboot注解实现。

什么是ajax?

一种「异步请求」+「局部刷新」技术。等于异步JavaScript 和 XML࿰c;用于创建快速动态网页。

异步请求:不需要等待当前请求返回就可以发送下一个请求。

局部刷新:无需重新加载整个网页的情况下࿰c;能够更新部分网页。

什么是Servlet

servlet是一个比较抽奖的概念࿰c;也是web部分的核心组件࿰c;大家回答这个问题一定要加入自己的理解࿰c;不要背定义。

servlet其实就是一个java程序࿰c;他主要是用来解决动态页面的问题。

之前都是浏览器像服务器请求资源࿰c;服务器(tomcat)返回页面࿰c;但用户多了之后࿰c;每个用户希望带到不用的资源。这时就该servlet上场表演了。

servlet存在于tomcat之中࿰c;用来网络请求与响应࿰c;但他的重心更在于业务处理࿰c;我们访问京东和淘宝的返回的商品是不一样的࿰c;就需要程序员去编写࿰c;目前MVC三层架构࿰c;我们都是在service层处理业务࿰c;但这其实是从servlet中抽取出来的。

看一下servlet处理请求的过程:

【爆肝一周】面试10多家中大厂后的万字总结——❤️JavaWeb篇❤️(建议收藏)

说一说Servlet的生命周期

Servlet生命周期分为三个阶段:

  • 初始化阶段 调用init()方法

  • 响应客户请求阶段  调用service()方法-àdoGet/dopost()

  • 终止阶段  调用destroy()方法

比较一下Listener和Filter/Servlet的区别

servlet已经介绍过࿰c;和他相似的这些你了解吗?

  • servlet是一种运行服务器端的java应用程序࿰c;工作在客户端请求与服务器响应的中间层。

  • filter是一个可以复用的代码片段࿰c;可以用来转换http请求、响应和头信息。Filter不像Servlet࿰c;它不能产生一个请求或者响应࿰c;它只是修改对某一资源的请求࿰c;或者修改从某一的响应。

  • 从字面上可以看出listener主要用来监听只用。通过listener可以监听web服务器中某一个执行动作࿰c;并根据其要求作出相应的响应。

  • servlet,filter都是针对url之类的࿰c;而listener是针对对象的操作的。

拦截器和过滤器的区别

这块的东西比较乱࿰c;给大家画个图

  • 拦截器是基于Java的反射机制的࿰c;而过滤器是基于函数回调。
  • 拦截器不依赖与servlet容器࿰c;过滤器依赖与servlet容器。
  • 拦截器只能对action请求起作用࿰c;而过滤器则可以对几乎所有的请求起作用。
  • 拦截器可以访问action上下文、值栈里的对象࿰c;而过滤器不能访问。
  • 在action的生命周期中࿰c;拦截器可以多次被调用࿰c;而过滤器只能在容器初始化时被调用一次。
  • 拦截器可以获取IOC容器中的各个bean࿰c;而过滤器就不行࿰c;这点很重要࿰c;在拦截器里注入一个service࿰c;可以调用业务逻辑。

【爆肝一周】面试10多家中大厂后的万字总结——❤️JavaWeb篇❤️(建议收藏)

Jsp有哪些内置对象?作用分别是什么?

  • request 用户端请求࿰c;此请求会包含来自GET/POST请求的参数
  • response 网页传回用户端的回应
  • pageContext 网页的属性是在这里管理
  • session 与请求有关的会话期
  • application servlet 正在执行的内容
  • out 用来传送回应的输出
  • config servlet的构架部件
  • page JSP网页本身
  • exception 针对错误网页࿰c;未捕捉的例外

jsp和servlet的区别、共同点、各自应用的范围?

JSP是Servlet技术的扩展࿰c;本质上就是Servlet的简易方式。JSP编译后是“类servlet”。

Servlet和JSP最主要的不同点在于:Servlet的应用逻辑是在Java文件中࿰c;并且完全从表示层中的HTML里分离开来。而JSP的情况是Java和HTML可以组合成一个扩展名为.jsp的文件。

JSP侧重于视图࿰c;Servlet主要用于控制逻辑。在struts框架中,JSP位于MVC设计模式的视图层,而Servlet位于控制层.

tomcat容器是如何创建servlet类实例?用到了什么原理?

当容器启动时࿰c;会读取在webapps目录下所有的web应用中的web.xml文件࿰c;然后对xml文件进行解析࿰c;并读取servlet注册信息。

然后࿰c;将每个应用中注册的servlet类都进行加载࿰c;并通过反射的方式实例化。(有时候也是在第一次请求时实例化)

在servlet注册时加上1如果为正数࿰c;则在一开始就实例化࿰c;如果不写或为负数࿰c;则第一次请求实例化。

如何解决请求和响应的乱码问题

请求

GET请求:GET请求参数是在地址后面的。我们需要修改tomcat的配置文件。需要在server.xml文件修改Connector标签࿰c;添加URIEncoding="utf-8"属性。

POST请求:post请求提交了中文的请求体࿰c;服务器解析出现问题。在获取参数值之前࿰c;设置请求的解码格式࿰c;使其和页面保持一致。

request.setCharacterEncoding("utf-8");

响应

向浏览器发送响应的时候࿰c;要告诉浏览器࿰c;我使用的字符集是哪个࿰c;浏览器就会按照这种方式来解码。

方法一:

response.setHeader("Content-Type", "text/html;charset=utf-8");

方法二:

response.setContentType("text/html;charset=utf-8");

session、cookie、token都是什么?

首先我们要明白http是一种无状态协议࿰c;怎么理解呢?很简单

夏洛:大爷࿰c;楼上322住的是马冬梅家吧?
大爷:马冬什么? 
夏洛:马冬梅。 
大爷:什么冬梅啊? 
夏洛:马冬梅啊。 
大爷:马什么梅?
夏洛:行࿰c;大爷你先凉快着吧。

这段对话都熟悉吧࿰c;http就是那个大爷࿰c;那如果我们就直接把“大爷”放给用户࿰c;用户不用干别的了࿰c;就不停的登录就行了。

既然“大爷不靠谱”࿰c;我们找“大娘”去吧。

哈哈哈࿰c;开个玩笑࿰c;言归正传。

为了解决用户频繁登录的问题࿰c;在服务端和客户端共同维护一个状态——会话࿰c;就是所谓sessionc;我们根据会话id判断是否是同一用户࿰c;这样用户就开心了。

但是服务器可不开心了࿰c;因为用户越来越多࿰c;都要把session存在服务器࿰c;这对服务器来说是一个巨大的开销࿰c;这是服务器就找来了自己的兄弟帮他分担(集群部署࿰c;负载均衡)。

但是问题依然存在࿰c;如果兄弟挂了怎么办࿰c;兄弟们之间的数据怎么同步࿰c;用户1把session存放在机器A上࿰c;下次访问时负载均衡到了机器B࿰c;完了࿰c;找不到࿰c;用户又要骂娘。

这时有人思c;为什么一定要服务端保存呢࿰c;让客户端自己保存不就好了࿰c;所以就诞生了cookiec;下一次请求时客户段把cookie发送给服务器࿰c;说我已经登录了。

但是空口无凭࿰c;服务器怎么知道哪个cookie是我发过去的呢?如何验证成了新的问题。

有人想到了一个办法࿰c;用加密令牌࿰c;也就是tokenc;服务器发给客户端一个令牌࿰c;令牌保存加密后id和密钥࿰c;下一次请求时通过headers传给服务端࿰c;由于密钥别人不知道࿰c;只有服务端知道࿰c;就实现了验证࿰c;且别人无法伪造。

如果感觉博主讲的还不错࿰c;一键三连支持一下吧。

更多学习视频+笔记࿰c;PC端看左侧「关于作者」࿰c;手机端「私信」博主。

@H_969_63@mVC与三层架构

三层架构与MVC的目标一致:都是为了解耦和、提高代码复用。MVC是一种设计模式࿰c;而三层架构是一种软件架构。

@H_848_65@mVC

@H_166_13@model 模型

模型负责各个功能的实现(如登录、增加、删除功能)࿰c;JavaBean实现。

View 视图

用户看到的页面和与用户的交互。包含各种表单。 实现视图用到的技术有html/css/jsp/js等前端技术。

常用的web 容器和开发工具

Controller 控制器

控制器负责将视图与模型一一对应起来。相当于一个模型分发器。接收请求࿰c;并将该请求跳转(转发࿰c;重定向)到模型进行处理。模型处理完毕后࿰c;再通过控制器࿰c;返回给视图中的请求处。

三层架构

表现层(UI)(web层)、业务逻辑层(BLL)(service层)、数据访问层(DAL)(dao层) ࿰c;再加上实体类库(Model)

  • 实体类库(Model)࿰c;在Java中࿰c;往往将其称为Entity实体类。数据库中用于存放数据࿰c;而我们通常选择会用一个专门的类来抽象出数据表的结构࿰c;类的属性就一对一的对应这表的属性。一般来说࿰c;R_924_11845@odel实体类库层需要被DAL层࿰c;BIL层和UI层引用。

  • 数据访问层(DAL)࿰c;主要是存放对数据类的访问࿰c;对数据库的添加、删除、修改、更新等基本操作࿰c;DAL就是根据业务需求c;构造sql语句࿰c;构造参数࿰c;调用帮助类࿰c;获取结果࿰c;DAL层被BIL层调用

  • 业务逻辑层(BLL)࿰c;BLL层好比是桥梁࿰c;将uI表示层与DAL数据访问层之间联系起来。所要负责的࿰c;就是处理涉及业务逻辑相关的问题࿰c;比如在调用访问数据库之前࿰c;先处理数据、判断数据。

说说你对JSON的理解

JSON是一种轻量级的数据交换格式。它基于标准字符串实现࿰c;可分为三类数据:

  • 单个数据:有number, String, Boolean和null四种类型数据。

  • 多个有序的数据: 数组࿰c;用[]包含起来, 其元素可以是三类数据中的任意一种, 元素之间用,号隔开。

  • 多个无序的数据: 对象用{}包含起来, 其元素必须由key-value组成, key是一个字符串, value可以是任意类型数据, key与value之间用:号隔开, 两个key-value之间用,号隔开。

接口间基于JSON传输数据有什么好处?

json之前都是基于xml的传输࿰c;所以基于xml对比。

  • 简洁࿰c;没有xml的开闭标签
  • 文件更小࿰c;传输更快
  • 序列化和反序列化的速度高于xml
  • cpu处理json消耗的资源更少

什么是单点登录

单点登录的英文名叫做:Single Sign On(简称SSO)。

起初我们的所有功能都在一个系统࿰c;比如登录࿰c;交易࿰c;物理。后来有了分布式微服务࿰c;按照功能拆分成了多个子服务࿰c;如何实现一处登录࿰c;处处可用呢?

也就是如何用一把锁࿰c;打开你家的所有门?需要解决以下问题:

session共享

  • 全局复制࿰c;集群内每个tomcat的session完全同步࿰c;这样会影响集群的性能。
  • hash映射࿰c;将ip映射的对应的机器上࿰c;也就是某个固定访问某台机器。一旦挂了࿰c;就会丢数据。
  • 把Session数据放在redis中。

redis会在【redis篇】更新࿰c;想提前了解的小伙伴PC端看左侧「关于作者」࿰c;手机端「私信」博主。

在单点登录中࿰c;如果cookie被禁用了怎么办?

单点登录的原理是后端生成一个sessionIDc;然后设置到cookiec;后面的所有请求浏览器都会带上cookiec;然后服务端从cookie里获取sessionID࿰c;再查询到用户信息。

所以࿰c;保持登录的关键是通过cookie保存和传输的sessionIDc;其本质是能获取用户信息的数据。除了cookiec;还通常使用http请求头来传输。但是这个请求头浏览器不会像cookie一样自动携带࿰c;需要手工处理。


以上就是关于「Javaweb」部分总结出的面试题࿰c;如果哪里有问题࿰c;欢迎大家交流评论!

最后

⭐今天是坚持刷题更文的第34/100天

⭐各位的点赞、关注、收藏、评论、订阅就是一条创作的最大动力

⭐更多面试题欢迎关注专栏《大厂面试突击》

为了回馈各位粉丝࿰c;礼尚往来࿰c;给大家准备了一条多年积累下来的优质资源࿰c;包括 学习视频、面试资料、珍藏电子书等

需要的小伙伴PC端看左侧「关于作者」࿰c;手机端「私信」博主。

大佬总结

以上是大佬教程为你收集整理的【爆肝一周】面试10多家中大厂后的万字总结——❤️JavaWeb篇❤️(建议收藏)全部内容,希望文章能够帮你解决【爆肝一周】面试10多家中大厂后的万字总结——❤️JavaWeb篇❤️(建议收藏)所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。