计算机网络实验4:HTTP、DNS协议分析

文章目录

  • 1. 主要教学内容
  • 2. HTTP协议
  • 3. HTTP分析实验
    • 【实验目的】
    • 【实验原理】
    • 【实验内容】
    • 【实验思考】
  • 4. HTTP分析实验可能遇到的问题
    • 4.1 捕捉不到http报文
    • 4.2 百度是使用HTTPS协议进行传输
    • 4.3 Wireshark获得数据太多如何筛选
    • 4.4 http报文字段含义不清楚
      • General(通用部分):
      • Request Headers(请求头部):
      • Response Headers(响应头部):
    • 4.5 http协议工作过程怎么填写
  • 5. DNS协议
  • 6. DNS协议分析实验
    • 【实验目的】
    • 【实验原理】
    • 【实验内容】
    • 【实验思考】
  • 7. DNS协议分析实验可能遇到的问题
    • 7.1 不了解nslookup命令如何使用
    • 7.2 如何在Wireshark中对应DNS协议内容

1. 主要教学内容

  • 实验内容:使用Wireshark捕获数据包,根据捕获的相关数据包分别对HTTP、DNS协议展开分析。额外内容:利用fiddler软件对HTTPS协议进行分析。
  • 所需学时:1。
  • 重难点:HTTP和DNS协议的报文结构。
  • 周次:第3周。
  • 教材相关章节:2.4、2.7。

2. HTTP协议

HTTP(超文本传输协议)是一个基于请求与响应模式的无状态(指协议对于事务处理没有记忆能力)的应用层协议,常基于 TCP 的连接方式。HTTP 1.1版本中给出一种持续连接的机制,绝大多数的 Web 应用都构建在 HTTP 协议之上。
在 HTTP 的请求和应答标准中,客户端是终端用户,服务器端是网站。通过使用 Web浏览器或者其他的工具,客户端发起一个到服务器上指定端口(默认端口为 80)的 HTTP请求,这个客户端称为用户代理(User Agent)。应答的服务器上存储着一些资源,比如HTML 文件和图像,这个应答服务器称为源服务器(Origin Server)。在用户代理和源服务器中间可能存在多个中间层,比如代理、网关或者隧道(Tunnels)。尽管 TCP/IP 协议是互联网上最流行的应用,但是 HTTP 协议并没有规定必须使用它和它支持的层。事实上HTTP 可以在任何其他互联网协议或其他网络上实现。HTTP 只假定其下层协议提供可靠的传输,任何能够提供这种保证的协议都可以被其使用。
通常情况下,由 HTTP 客户端发起一个请求,建立一个到服务器指定端口的 TCP 连接。HTTP 服务器则在该端口监听客户端发送过来的请求。一旦收到请求,服务器向客户端发回一个状态行和响应的消息,消息的消息体可能是请求的文件、错误消息或者其他一些信息。

  • HTTP有两类报文,HTTP的请求报文响应报文结构(SP:空格;crlf :回车换行):

在这里插入图片描述

  • HTTP 协议定义了8种方法表示对指定数据的操作:

在这里插入图片描述

在这里插入图片描述

  • HTTP请求报文分为三部分:请求行、消息报头、请求正文。

  • 在接收和解释请求消息后,服务器返回一个HTTP响应消息(Request Mesage)。 HTTP 响应消息也由三部分组成,分别是状态行、消息报头、响应正文。

  • 状态码由三位数宇组成,第 一位数字定义了响应的类别,有以下5种可能取值。

1xx:指示信息,表示请求已接收,继续处理。

2xx:成功,表示请求已被成功接收、理解、接受。

3xx:重定向,要完成请求必须进行更进一步的操作。

4xx:客户端错误,请求有语法错误或请求无法实现。

5xx:服务器端错误,服务器未能实现合法的请求。

  • 常见状态码:

在这里插入图片描述

在这里插入图片描述

3. HTTP分析实验

【实验目的】

(1) 掌握 HTTP 协议获取网页的流程。
(2) 了解 HTTP 请求报文和响应报文的格式,并进行报文分析。
(3) 了解 HTTP 1.0 和 HTTP 1.1的区别。

【实验原理】

HTTP 协议定义了 Web 客户端(浏览器)如何向 Web 站点请求 Web 页面以及 Web 服务器如何将 Web 页面传送给客户机。具体而言,这是通过客户端发送 HTTP 请求报文和HTTP 响应报文实现的。当用户请求一个页面时(在浏览器中输人网址或者单击网页某一个链接),浏览器会向 Web 服务器发出对该页及其引用的相关对象的 HTTP 请求报文,服务器响应这些请求报文,生成 HTTP 响应报文,并将请求的对象附在 HTTP 响应报文后发送给客户端。

由于网页文档的传输需要可靠性的保证,所以 HTTP 协议使用传输层的 TCP 协议作为载体。TCP 协议是一个面向连接的协议,提供可靠的数据传输,HTTP 协议在默认的情况下使用TCP的80端口。

HTTP 协议是无状态的协议,即当服务器收到某个客户端发送的 HTTP 请求报文时, 并不清楚该客户端是否曾经发送过相同的 HTTP 请求报文,即 HTTP 协议本身不会维护客户端和服务器端的状态。

非持久连接方式与网页上的每个对象都需要建立一个TCP 连接,效率不高,HTTP 1. 0 只能使用非持久连接方式。持久连接方式使用一个TCP 连接,其流水线作业方式比非流水线作业方式效率高。HTTP 1. 1既能使用非持久连接方式又能使用持久连接方式,默认方式下使用持久连接的流水线作业方式。持久连接的缺点是对服务器的性能要求比较高。因为服务器对于每个TCP 的连接都需要花费较长的时间,而每个TCP 连接都需要占用服务器响应的资源, 非持久连接由于连接释放得快,资源的释放也相对快,并且连接客户的数量对于持久连接而言相对要少一些。

HTTP报文包括HTTP请求报文和HTTP响应报文。这两种报文在实际的传输中都是以 ASCII 码方式编码的。HTTP 报文格式反映了HTTP 协议的核心内容,包括客户端如何向服务器端请求对象,通信双方需要协商哪些内容等。

【实验内容】

  • 步骤 1:打开 Wireshark,选择监听网卡,设置过滤规则(只捕获 HTTP 的报文),开始侦听。

  • 步骤 2:打开浏览器,输人网址(例如 www.baidu.com),捕获数据

  • 步骤 3:分析捕获的数据包,回答以下问题。

(1) 在捕获的报文中,共有几种 HTTP 报文?客户机与服务器之间共建立了几个连接?服务器和客户机分别使用了哪几个端口?

(2) 在捕获的 HTTP 报文中,选择一个 HTTP 请求报文和对应的 HTTP 应答报文,按图 2-8 所示分析它们的字段,并将分析结果填人表 2-4 和表 2-5 中。

在这里插入图片描述

(3) 综合分析捕获的报文,理解HTTP协议的工作过程,将结果填人表2-6中。

在这里插入图片描述

(4) 在第1个和第3个HTTP会话中,Web服务器对 Web客户端GET请求的响应是什么?

【实验思考】

(1) 实验中哪台计算机启动了 HTTP 会话?是如何启动的?

(2) 哪台计算机首先发出了结束 HTTP 会话的信号? 是如何发出的?

(3) GET 方法取回由 Request-URI标识的信息,POST 方法可以用于提交表单。请寻找一个有表单提交特征的网页,访问该网页,捕获数据包并分析请求方法中的 GET 和POST 方法。

4. HTTP分析实验可能遇到的问题

4.1 捕捉不到http报文

可能原因:不是无法抓取 http包,是抓到了没有解密,显示还是TLS。

解决方法

Windows系统参考:为什么我的 Wireshark 抓不到/抓不全 HTTP 数据包 ?

MAC系统参考:Mac电脑安装配置Wireshark 抓包工具,解决Https无法抓包问题

4.2 百度是使用HTTPS协议进行传输

我们以为捕获不到http报文,实际上是因为网站加密了,通过上述方法得到http报文中可能有许多看不懂的地方,而且发现使用的端口号是443而不是80,这是因为大部分网站都是使用HTTPS协议进行传输,以提高数据传输的安全性。

但是我们无法通过Wireshark进行捕捉数据包,因此,我们可以尝试一些使用HTTP的网站。

尽管如此,仍然有一些HTTP开头的网站存在。这些网站可能是因为运营成本较低、没有很多个人信息输入需求,或者本身不涉及敏感信息等原因。比如旅游网站“马蜂窝”(http://www.mafengwo.cn/)。

4.3 Wireshark获得数据太多如何筛选

  • 我们可以通过网站的前端页面获得网站的IP地址:

在这里插入图片描述

通过Wireshark中的过滤器,筛选出该IP的数据:

在这里插入图片描述

此时就能清晰的看到http请求报文,以及http响应报文。

进行对应分析即可:

在这里插入图片描述

在这里插入图片描述

4.4 http报文字段含义不清楚

General(通用部分):

  • Request URL:请求的URL地址,即请求的目标资源。
  • Request Method:请求方法,表示客户端对资源的请求操作。常见的方法有GET、POST、PUT、DELETE等。
  • Status Code:状态码,表示服务器对请求的处理结果。常见的状态码有200 OK(成功)、404 Not Found(未找到资源)、500 Internal Server Error(服务器内部错误)等。
  • Remote Address:这个字段不是HTTP标准中的一部分,而是指示客户端的IP地址和端口号,表示请求的源IP地址。在HTTP请求中,这个字段显示客户端的IP地址和端口号,通常是代理服务器或负载均衡器的地址,而不是最终用户的真实IP地址。
  • Referrer Policy:Referrer是HTTP请求头部的一个字段,用于指示请求的来源URL,即访问当前页面的前一个页面的URL。Referrer Policy则是为了控制Referrer头部的发送情况而定义的策略。Referrer Policy可以设置为no-referrer(不发送Referrer头部)、no-referrer-when-downgrade(只在从HTTPS网页导航到HTTP网页时不发送Referrer头部)、origin(仅发送源信息,但不包含路径等具体内容)、strict-origin(仅在协议安全的情况下发送完整的源信息)等。

Request Headers(请求头部):

  • User-Agent:用户代理,标识发起请求的客户端应用程序或设备类型,例如浏览器名称和版本。
  • Accept:客户端可接受的响应内容类型,通常是MIME类型(例如text/html、application/json等)。
  • Accept-Language:客户端可接受的语言类型,用于指定客户端希望接收的语言版本。
  • Cookie:包含客户端发送给服务器的HTTP cookie信息,通常用于会话管理。
  • Referer:表示请求的来源URL,即访问当前页面的前一个页面的URL,跨域时基于安全不会给全
  • Authorization:用于在请求中传递认证信息,例如JWT或者原始的用于HTTP基本认证的用户名和密码。
  • Cache-Control:缓存控制指令,用于指定缓存策略,例如no-cache(不使用缓存)或max-age(缓存的最大有效时间)等。
  • Host:表示请求的目标主机的域名或IP地址。在HTTP/1.1中,Host头部是必需的,用于指定请求的目标服务器和端口号。例如:www.example.com:8080
  • Origin:Origin头部用于指示请求的来源,即发起请求的网页所在的源,包含协议、域名和端口号。它通常用于跨域请求中,由浏览器自动添加。例如:http://www.origin.com
  • Connection:Connection头部用于控制是否在请求完成后保持与服务器的连接。它是一个非标准的HTTP头部,在HTTP/1.1中引入了持久连接(Persistent Connection)后,取代了早期版本的Proxy-Connection和Keep-Alive头部。Connection头部的取值通常有几种:
  • close:请求完成后关闭与服务器的连接。即,每次请求都会新建一个连接。
  • keep-alive:请求完成后保持与服务器的连接,以便在同一连接上进行多个请求。这是持久连接的一种方式,减少了连接的建立和关闭的开销,提高了请求的效率。
  • Upgrade:允许客户端和服务器协商更高级的协议。例如,WebSocket可以通过此头部实现从HTTP协议升级到WebSocket协议。
  • 在现代的HTTP/1.1中,持久连接是默认启用的,即默认使用keep-alive,除非显示指定close,因此通常情况下可以不必手动添加Connection头部。

Response Headers(响应头部):

  • Content-Type:响应的内容类型,表示服务器返回的数据的MIME类型,例如text/html、application/json等。
  • Content-Length:响应的内容长度,表示服务器返回数据的字节数。
  • Set-Cookie:设置HTTP cookie,服务器通过该头部向客户端发送新的cookie信息,用于会话管理。
  • Expires:指定响应内容的过期时间,即缓存失效时间点。
  • Cache-Control:缓存控制指令,用于指定缓存策略,例如no-cache(不缓存)或max-age(缓存的最大有效时间)等。
  • Server:指示服务器软件的名称和版本。

4.5 http协议工作过程怎么填写

可以参考:

在这里插入图片描述

5. DNS协议

DNS(Domain Name System,域名系统)用于命名组织到域层次结构中的计算机和网络服务。
DNS 协议分成包头数据两部分。如图所示,该报文由12B的首部和4个长度可变的字段组成:

在这里插入图片描述

各字段含义:

  • 标识字段:由客户程序设置并有服务器返回结果,16 位,在对应的query和response报文中有着相同的ID,可以在捕获到的包中配对请求和应答报文,提取相关信息,同时也可以根据它们的时间戳大致估计DNS的响应时间。
  • 标志字段:16 位,结构如图所示:

在这里插入图片描述

标志字段各字段解释如下:

QR(查询/响应):占 1B,定义报文类型。若为0则表示是查询报文,否则就是响应报文。

OpCode:占4B,定义查询或响应的类型。若为0则表示是标准的,若为 1则表示是反向的,若为2则表示是服务器状态请求。

AA(授权回答):占1B,当它置位时(即值为 1),表示名字服务器是权限服务器,它只用在响应报文中。

TC(截断的):占 1B,当它置位时,表示响应已超过512B并已截断。

RD(要求递归):占 1B,当它置位时,表示客户希望得到递归回答。它在查询报文中置位,在响应报文中重复置位。

RA(递归可用):占 1B,当它在响应报文中置位时,表示可得到递归响应,它只能在响应报文中置位。

保留:占 1B,置为 0。

未知1与未知2均为新增字段,各占 1B。

RCode:占4B,表示在响应中的差错状态,只有权限服务器才能做出这个判断。

  • 问题数字段

在这里插入图片描述

查询名:要查找的名字,它由一个或者多个标示符序列组成。每个标示符以首字节数的计数值说明该标示符长度,每个名字以 0 结束。计数字节数必须在 0~63 之间。该字段无须填充字节。

查询类型:每个问题有一个查询类型,通常查询类型为 A(由名字获得 IP 地址)或者PTR(获得 IP 地址对应的域名)。

类域(class):置为0x0001 即可。

  • 资源记录部分:是DNS协议的最后了个字段,回答字段、授权宇段和附加信息字段均采用资源记录RR(Resource Record)的相同格式。

在这里插入图片描述

6. DNS协议分析实验

【实验目的】

(1) 学会在客户端使用 nslookup 命令进行域名解析

(2) 通过协议分析软件掌握 DNS 协议的报文格式

【实验原理】

DNS(Domain Name System,域名系统)是因特网的一项核心服务,它作为可以将域名和IP地址相互映射的一个分布式数据库,能够使用户更方便地访问互联网,而不用去记住能够被机器直接读取的IP地址。在因特网中向主机提供域名解析服务的机器即为 DNS 服务器。

DNS 基于 IP 协议中的 UDP 协议,端口号为 53。目前 DNS 分布式查询方式一般采用递归递归迭代相结合的方法。当在浏览器的地址栏中输人某一网址时,浏览器首先会向默认的本地域名服务器发出 DNS 请求报文,DNS请求报文中包括请求的域名和请求的类别。若本地域名服务器能够找到对应的 IP 地址,便返回一个 DNS 相应报文,其中包括域名以及一个或多个对应的IP 地址。若本地域名服务器不能找到,则会向上级根域名服务器发出域名解析请求,根域名服务器会返回一个 IP 地址告诉本地域名服务器应该到哪里请求所需域名的解析,本地域名服务器根据得到的 IP 向对应的域名服务器发出请求,最终获得域名和对应的 IP。
DNS的正向解析用于通过域名解析 IP 地址,反向解析用于通过 IP 地址获得域名。DNS 采用一个称为资源记录的数据结构描述某个域名和对应IP。每个资源记录是一个五元组,包括域名(Domain name)、生存时间(TTL)、类别类型

  • 生存时间用于指示该记录的稳定程度,极为稳定的信息会被分配一个很大的值,而极不稳定的信息则会被分配一个较小的值。
  • 类别字段对于 Internet 而言总是IN,事实上用于其他非 Internet 的情况几乎没有。类型字段指出了记录的类型,主要的类型包括 A,表示一台主机的IP 地址;MX,邮件服务器;NS,名字服务器;Cname,别名等。

nslookup 是一个监测网络中DNS服务器是否能正确实现域名解析的命令行工具。适用于Linux/UNIX和Windows 平台,用于简单检测DNS服务器的工作是否正常,也是排除 DNS服务器故障的一项重要手段。nslookup 指令适用于正向域名解析和反向域名解析。本实验通过nslookup 检测服务器的配置,并利用协议分析软件Wireshark捕获分析nslookup命令产生的DNS数据包。

nslookup查询命令格式为 nslookup 域名,主要产生两个操作,一是根据本地DNS服务器的IP地址获得本地 DNS服务器的名字; 二是根据输人查询的域名查找该域名的 IP地址。

【实验内容】

在一台连接 Internet 的计算机上进行下列实验。

  • 步骤 1:启动 Wireshark,选定侦听网卡,开始抓包。
  • 步骤 2:切换到命令提示窗口,在命令提示符下输人 nslookup www.baidu.com,分析执行结果。
  • 步骤 3:分析 Wireshark 捕获的数据,观察 nslookup 的通信过程,正常情况下能够捕获到 4 帧,试具体分析捕获的数据包中 DNS 的报文格式细节。
  • 步骤 4:继续使用协议分析仪进行数据的捕获,再次访问 www.baidu.com,观察此时是否还有 DNS 请求?
  • 步骤 5:关闭浏览器后再重新打开,访问一个尚未访问过的网站,例如 www.sohu.com,观察此时是否有 DNS 请求?为什么?
  • 步骤 6:在Windows 系统的命令提示符下运行 ipconfig /displaydns,显示本机缓冲区中的 DNS 解析内容。
  • 步骤 7:在 Windows 系统的命令提示符下运行 ipconfig /flushdns,则可以清除本机的 DNS 缓存记录。
  • 步骤 8:关闭浏览器再打开,访问刚才打开过的网站,观察是否有 DNS 请求?为什么?

【实验思考】

(1) DNS 协议中的资源记录 RR(Record Resource)包含哪些内容?

(2) DNS 除了返回需查找的域名还可能返回哪些内容?

(3) 反复实验,判断一个域名是否可以对应多个 IP 地址?域名与 IP 地址之间是否有对应的关系?

(4) 若实验中无法进行 DNS 解析,请写出导致问题的原因及解决办法

(5) DNS 协议何时用 UDP?何时用 TCP?

7. DNS协议分析实验可能遇到的问题

7.1 不了解nslookup命令如何使用

可以参考:nslookup 入门命令详解

7.2 如何在Wireshark中对应DNS协议内容

首先在过滤器中输入dns,然后查看后面的info信息,看看哪些是自己发送的DNS请求,最后对应信息进行分析。

在这里插入图片描述

在这里插入图片描述

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

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

相关文章

Oracle-如何判断字符串包含中文字符串(汉字),删除中文内容及保留中文内容

今天遇见一个问题需要将字段中包含中文字符串的筛选出来 --建表 CREATE TABLE HADOOP1.AAA ( ID VARCHAR2(255) ); --添加字段INSERT INTO HADOOP1.AAA(ID)VALUES(理解);....--查询表内容SELECT * FROM HADOOP1.AAA;在网上查找了一下有以下三种方式: 第一种&#…

安全远控如何设置?揭秘ToDesk、TeamViewer 、向日葵安全远程防御大招

写在前面一、远程控制:安全性不可忽略二、远控软件安全设置实测◉ ToDesk◉ TeamViewer◉ 向日葵 三、远控安全的亮点功能四、个人总结与建议 写在前面 说到远程办公,相信大家都不陌生。远程工作是员工在家中或者其他非办公场所上班的一种工作模式&…

每天一道leetcode:712. 两个字符串的最小ASCII删除和(动态规划中等)

今日份题目: 给定两个字符串s1 和 s2,返回 使两个字符串相等所需删除字符的 ASCII 值的最小和 。 示例1 输入: s1 "sea", s2 "eat" 输出: 231 解释: 在 "sea" 中删除 "s" 并将 "s" 的值(115)加入…

【Quarkus技术系列】打造基于Quarkus的云原生微服务框架实践(1)

前提介绍 本系列文章主要讲解如何基于Quarkus技术搭建和开发"专为Kubernetes而优化的Java微服务框架"的入门和实践,你将会学习到如何搭建Quarkus微服务脚环境及脚手架,开发Quarkus的端点服务,系统和应用层级的配置介绍与Quarkus的…

【MongoDB】数据库、集合、文档常用CRUD命令

目录 一、数据库操作 1、创建数据库操作 2、查看当前有哪些数据库 3、查看当前在使用哪个数据库 4、删除数据库 二、集合操作 1、查看有哪些集合 2、删除集合 3、创建集合 三、文档基本操作 1、插入数据 2、查询数据 3、删除数据 4、修改数据 四、文档分页查询 …

三维可视化平台有哪些?Sovit3D可视化平台怎么样?

随着社会经济的发展和数字技术的进步,互联网行业发展迅速。为了适应新时代社会发展的需要,大数据在这个社会经济发展过程中随着技术的进步而显得尤为重要。同时,大数据技术的快速发展进程也推动了可视化技术的飞速发展,国内外各类…

【Sklearn】基于随机森林算法的数据分类预测(Excel可直接替换数据)

【Sklearn】基于随机森林算法的数据分类预测(Excel可直接替换数据) 1.模型原理1.1 模型原理1.2 数学模型 2.模型参数3.文件结构4.Excel数据5.下载地址6.完整代码7.运行结果 1.模型原理 随机森林(Random Forest)是一种集成学习方法…

flutter开发实战-实现左右来回移动的按钮引导动画效果

flutter开发实战-实现左右来回移动的按钮引导动画效果 最近开发过程中需要实现左右来回移动的按钮引导动画效果 一、动画 AnimationController用来控制一个或者多个动画的正向、反向、停止等相关动画操作。在默认情况下AnimationController是按照线性进行动画播放的。Animati…

五个独特且有趣的ChatGPT指令

今天分享5个很实用的指令,这几个指令很多时候对我们输出内容的连贯性、文章风格、创意性等方面有着决定性的作用。 目录 第一个:Max tokens(最大令牌) 第二个:Top_p(控制采样) 第三个:Presence_penalty …

draw.io画图时,用一个箭头(线段)连结一个矩形和直线时,发现,无论怎么调节,都无法使其无缝连接。

问题描述:draw.io画图时,用一个箭头(线段)连结一个矩形和直线时,发现,无论怎么调节,都无法使其无缝连接。要么少一段,如图1所示。要么多一段,如图2所示。 图1&#xff0c…

卫星--夏令营

几何问题:就是用几何数学知识解题即可 但是越是数学编程题,越容易忽略数学题中的细节 1.地球半径你算进去了吗? 2.sin三角函数,M_PI标准圆周率在cmath文件里 3.有可能给出的夹角超过180呢,没给数据要求,就要自己考…

在生产环境中部署Elasticsearch:最佳实践和故障排除技巧———索引与数据上传(二)

前言 「作者主页」:雪碧有白泡泡 「个人网站」:雪碧的个人网站 「推荐专栏」: ★java一站式服务 ★ ★ React从入门到精通★ ★前端炫酷代码分享 ★ ★ 从0到英雄,vue成神之路★ ★ uniapp-从构建到提升★ ★ 从0到英雄&#xff…

使用阿里云服务器搭建Discuz论坛网站教程基于CentOS系统

阿里云百科分享使用阿里云服务器建站教程,本文是搭建Discuz论坛,Discuz!是一款通用的社区论坛软件系统,它采用PHP和MySQL组合的基础架构,为您提供高效的论坛解决方案。本文介绍如何在CentOS 7操作系统的ECS实例上搭建Discuz! X3.4…

JAVA宝典----输入输出流(理解记忆)

目录 一、 Java IO流的实现机制是什么? 二、Java中有几种类型的流? 三、管理文件和目录的类是什么? 四、Java Socket是什么? 五、什么是 JAVA NIO? 六、 什么是Java序列化? (1)序…

连续两年增收不增利,比亚迪电子靠新能源汽车业务再次起飞?

在净利润连续两年下挫之后,比亚迪电子(00285.HK)终于迎来了好消息。 不久前比亚迪电子发布2023年中期盈利预告显示,上半年净利润同比增加115%-146%(2022年上半年的净利润显示6.34亿元)。 这主要受益于大客…

tomcat多实例与动静分离

实验:在一台虚拟机上配置多台tomcat 1.配置 tomcat 环境变量 vim /etc/profile.d/tomcat.sh source /etc/profile.d/tomcat.sh 2.修改 tomcat2 中的 server.xml 文件,要求各 tomcat 实例配置不能有重复的端口号 vim /usr/local/tomcat/tomcat2/conf/…

山东布谷科技直播平台搭建游戏开发技术分享:数据存储的重要意义

在市场上的热门的直播平台中,有很多小程序为用户提供各种各样的功能,这其中就有很多游戏小程序,当今社会独生子女众多,很多作为独生子女的用户都会去选择一个能够社交互动的APP来填补内心的空虚,而直播平台的实时互动的…

Node.js学习笔记-04

这第九章也是个大重点 九、玩转进程 Node在选型时决定在V8引擎之上构建,也就意味着它的模型与浏览器类似。 本章关于进程的介绍和讨论将会解决如下两个问题: 单进程单线程并非完美,如今CPU基本均是多核的,真正的服务器&#xf…

MySQL 8 group by 报错 this is incompatible with sql_mode=only_full_group_by

文章目录 sql_mode配置ONLY_FULL_GROUP_BYSTRICT_TRANS_TABLESNO_ZERO_IN_DATENO_ZERO_DATEERROR_FOR_DIVISION_BY_ZERONO_AUTO_CREATE_USERNO_ENGINE_SUBSTITUTION 局部修改配置windows修改配置Linux修改配置 sql_mode配置 ONLY_FULL_GROUP_BY 用于控制是否允许对查询结果进…

springboot汽车租赁后台java出租客户管理jsp源代码mysql

本项目为前几天收费帮学妹做的一个项目,Java EE JSP项目,在工作环境中基本使用不到,但是很多学校把这个当作编程入门的项目来做,故分享出本项目供初学者参考。 一、项目描述 springboot汽车租赁后台 系统有1权限:管理…