Tomcat 的使用(图文教学)

article/2025/8/14 18:43:36
Tomcat 的使用(图文教学)
  • 前言
  • 一、什么是Tomcat?
  • 二、Tomcat 服务器和 Servlet 版本的对应关系
  • 三、Tomcat 的使用
    • 1、安装
    • 2、目录介绍
    • 3、如何启动
    • 4、Tomcat 的停止
    • 5、如何修改 Tomcat 的端口号
    • 6、如何部暑 web 工程到 Tomcat 中
      • 6.1 方式一
      • 6.2 方式二
  • 四、两种访问页面的方式
    • 1、手托 html 页面到浏览器
    • 2、在浏览器中输入访问路径进行访问
  • 五、ROOT工程和index页面的默认访问
    • 1、ROOT 的工程的访问
    • 2、默认 index.html 页面的访 问
  • 六、IDEA 整合 Tomcat 服务器
  • 七、IDEA 中动态 web 工程的操作
    • 1、IDEA 中如何创建动态 web 工程
    • 2、Web 工程的目录介绍
    • 3、如何给动态 web 工程添加额外 jar 包
    • 4、如何在 IDEA 中部署工程到 Tomcat 上运行
    • 5、在 IDEA 中如何运行,和停止 Tomcat 实例。
    • 6、修改工程访问路径
    • 7、修改运行的端口号
    • 8、修改运行使用的浏览器


前言

本博主将用CSDN记录软件开发求学之路上亲身所得与所学的心得与知识,有兴趣的小伙伴可以关注博主!
也许一个人独行,可以走的很快,但是一群人结伴而行,才能走的更远!

一、什么是Tomcat?

Tomcat 是一款免费、开源的 Web 服务器和 Servlet 容器,由 Apache 软件基金会开发和维护。Tomcat 实现了 Java Servlet、JavaServer Pages(JSP)、Java Expression Language(EL)和 WebSocket 等 Java 技术规范,可以作为 Web 应用程序的运行环境。

Tomcat 的特点包括:

  • 轻量级:Tomcat 的核心代码非常小,可以快速启动和运行,而且占用的系统资源较少,适合用于低配置的服务器。
  • 易于配置:Tomcat 提供了丰富的配置选项,可以通过修改配置文件来定制化 Tomcat 的行为。
  • 支持标准:Tomcat 实现了 Java Servlet、JavaServer Pages(JSP)、Java Expression Language(EL)和 WebSocket 等 Java 技术规范,可以运行符合规范的 Web 应用程序。
  • 可扩展性:Tomcat 支持插件扩展,可以通过添加新的模块来增加功能。
  • 安全性:Tomcat 提供了多种安全机制,可以保护 Web 应用程序的安全性。

作为一个 Web 服务器和 Servlet 容器,Tomcat 可以用于部署和运行各种类型的 Web 应用程序,例如企业级应用、电子商务平台、博客、论坛等。Tomcat 也可以作为开发和测试 Web 应用程序时的本地开发服务器,支持快速的应用程序部署和调试。

二、Tomcat 服务器和 Servlet 版本的对应关系

Tomcat版本

Servlet版本

JavaEE版本

运行环境版本

Tomcat 10

Servlet 5.0

JavaEE 8

Java 11+

Tomcat 9

Servlet 4.0

JavaEE 7

Java 8+

Tomcat 8

Servlet 3.1

JavaEE 7

Java 7+

Tomcat 7

Servlet 3.0

JavaEE 6

Java 6+

Tomcat 6

Servlet 2.5

JavaEE 5

Java 5+

需要注意的是,Tomcat 6 已经停止维护,不再推荐使用。另外,实际应用中,JavaEE 版本可能不一定与 Servlet 版本完全对应,具体需根据应用的需求和兼容性进行选择。

三、Tomcat 的使用

1、安装

  1. 下载 Tomcat 安装包:首先你需要下载 Tomcat 的安装包,可以从 Tomcat 官网上下载,选择适合自己的版本即可。建议下载最新的稳定版本。

  2. 解压安装包:将安装包解压到你想要安装的目录下,例如 C:Tomcat 或 /usr/local/tomcat。

2、目录介绍

Tomcat/
├── bin/
│   ├── catalina.sh
│   ├── catalina.bat
│   ├── startup.sh
│   ├── shutdown.sh
│   └── ...
├── conf/
│   ├── server.xml
│   ├── web.xml
│   └── ...
├── lib/
│   ├── catalina.jar
│   ├── servlet-api.jar
│   └── ...
├── logs/
├── temp/
├── webapps/
│   ├── ROOT/
│   ├── examples/
│   ├── docs/
│   └── ...
└── work/

下面是对目录的简要介绍:

  • bin/:包含了启动和关闭 Tomcat 的脚本以及其他一些工具。
  • conf/:包含了 Tomcat 的配置文件,例如 server.xml 和 web.xml。
  • lib/:包含了 Tomcat 运行时所需的 jar 文件。
  • logs/:包含了 Tomcat 运行时的日志文件。
  • temp/:包含了 Tomcat 运行时所需的临时文件。
  • webapps/:是放置 Web 应用程序的目录。
  • work/:包含了 Tomcat 运行时生成的临时文件。

3、如何启动

  1. 在 Windows 操作系统上,可以通过双击 Tomcat 安装目录下的 bin/catalina.bat 文件来启动 Tomcat。
  2. 启动后,可以通过浏览器访问 http://localhost:8080 来验证 Tomcat 是否启动成功。
  3. 当出现如下界面,说明 Tomcat 服务器启动成功!!!
    在这里插入图片描述

常见的启动失败的情况有,双击 startup.bat 文件,就会出现一个小黑窗口一闪而来。 这个时候,失败的原因基本上都是因为没有配置好 JAVA_HOME 环境变量。

配置 JAVA_HOME 环境变量:
在这里插入图片描述
常见的 JAVA_HOME 配置错误有以下几种情况:

  1. JAVA_HOME 必须全大写。
  2. JAVA_HOME 中间必须是下划线,不是减号-
  3. JAVA_HOME 配置的路径只需要配置到 jdk 的安装目录即可。不需要带上 bin 目录。

4、Tomcat 的停止

三种方式:

  1. 点击 tomcat 服务器窗口的 x 关闭按钮
  2. 把 Tomcat 服务器窗口置为当前窗口,然后按快捷键 Ctrl+C
  3. 找到 Tomcat 的 bin 目录下的 shutdown.bat 双击,就可以停止 Tomcat 服务器

5、如何修改 Tomcat 的端口号

Tomcat 默认的 HTTP 端口号是 8080,如果需要修改端口号,可以按照下面的步骤进行操作:

  1. 打开 conf/server.xml 文件。

  2. 找到以下代码:

    <Connector port="8080" protocol="HTTP/1.1"connectionTimeout="20000"redirectPort="8443" />
    

    其中,port="8080" 表示 Tomcat 的 HTTP 端口号是 8080。

  3. 修改 port 属性的值为你需要的端口号。例如,将端口号修改为 8888,代码如下:

    <Connector port="8888" protocol="HTTP/1.1"connectionTimeout="20000"redirectPort="8443" />
    
  4. 保存 server.xml 文件。

  5. 重新启动 Tomcat,使修改生效。

    如果是在 Windows 操作系统上,可以双击 Tomcat 安装目录下的 bin/catalina.bat 文件启动 Tomcat;如果是在 Linux 操作系统上,可以进入 Tomcat 安装目录下的 bin/ 目录,然后执行以下命令来启动 Tomcat:

    $ sh catalina.sh run
    
  6. 在浏览器中访问修改后的端口号,例如 http://localhost:8888/,验证端口号是否修改成功。

注意:如果端口号被占用,Tomcat 启动时会报错。在修改端口号时,要确保新端口号没有被其他程序占用。

6、如何部暑 web 工程到 Tomcat 中

6.1 方式一

将一个 Web 工程部署到 Tomcat 中,可以按照以下步骤进行操作:

  1. 将 Web 工程打成 war 包。

    在 Eclipse 或者其他 Java IDE 中,可以通过选择 Web 工程右键菜单中的“Export”或“Export as WAR file”选项,将 Web 工程打成 war 包,保存到本地。

  2. 将 war 包复制到 Tomcat 的 webapps/ 目录下。

    将刚才打成的 war 包,复制到 Tomcat 的 webapps/ 目录下。Tomcat 会自动将其解压并部署。

  3. 启动 Tomcat。

    在 Windows 操作系统上,可以双击 Tomcat 安装目录下的 bin/catalina.bat 文件启动 Tomcat;如果是在 Linux 操作系统上,可以进入 Tomcat 安装目录下的 bin/ 目录,然后执行以下命令来启动 Tomcat:

    $ sh catalina.sh run
    
  4. 在浏览器中访问 Web 工程。

    在浏览器中输入 http://localhost:8080/工程名,其中 工程名 是 Web 工程的名称。例如,假设 Web 工程的名称是 mywebapp,那么可以通过访问 http://localhost:8080/mywebapp 来访问该 Web 工程。

注意事项:

  • 在部署 Web 工程之前,要确保 Tomcat 已经成功安装并启动。
  • 如果 Tomcat 中已经存在同名的 Web 工程,部署新的 Web 工程会覆盖原有的 Web 工程。
  • 在部署 Web 工程时,要确保 Web 工程的目录结构正确,包括 WEB-INF 目录、web.xml 文件等。
6.2 方式二

找到 Tomcat 下的 conf 目录Catalinalocalhost 下,创建如下的配置文件:
abc.xml 配置文件内容如下:

<!-- Context 表示一个工程上下文 path 表示工程的访问路径:/abc docBase 表示你的工程目录在哪里 --> 
<Context path="/abc" docBase="E:ook" />

访问这个工程的路径如下:http://ip:port/abc/ 就表示访问 E:ook 目录

四、两种访问页面的方式

1、手托 html 页面到浏览器

手托 html 页面的原理:
在这里插入图片描述

2、在浏览器中输入访问路径进行访问

在浏览器中输入http://ip:端 口号/工程名/ 进行访问

输入访问地址访问的原因:
在这里插入图片描述
手动拖拽 HTML 页面到浏览器的方式是通过文件系统直接打开 HTML 文件,然后在浏览器中渲染显示该页面。这种方式不需要借助 Web 服务器和 Web 应用程序,适用于简单的静态网页或本地测试。

而在浏览器中输入 http://ip:端口号/工程名/ 的方式则是通过 Web 服务器和 Web 应用程序来访问 HTML 页面。通常情况下,HTML 页面是作为 Web 应用程序的一部分被部署在 Web 服务器上的,因此需要通过 Web 服务器和 Web 应用程序来进行访问。

具体来说,这种方式的访问流程如下:

  1. 用户在浏览器中输入 http://ip:端口号/工程名/

  2. 浏览器向 Web 服务器发送 HTTP 请求。

  3. Web 服务器接收到请求后,将请求转发给相应的 Web 应用程序。

  4. Web 应用程序根据请求的 URL,找到对应的 HTML 页面,并将该页面返回给浏览器。

  5. 浏览器接收到 HTML 页面后,解析显示该页面。

通过 Web 服务器和 Web 应用程序访问 HTML 页面的方式,可以实现更多的功能和交互,例如动态页面、表单提交、数据库访问等。同时,Web 服务器和 Web 应用程序也提供了更好的安全性和可扩展性,可以部署和管理复杂的 Web 应用程序。

五、ROOT工程和index页面的默认访问

1、ROOT 的工程的访问

在 Web 应用程序中,ROOT 是指 Web 应用程序的根目录,也就是 Web 应用程序的访问路径。如果某个 Web 应用程序被部署在 Web 服务器的 ROOT 目录下,那么该 Web 应用程序就可以通过访问 Web 服务器的 IP 地址或域名来访问,而无需指定 Web 应用程序的名称。

例如,如果将一个名为 myapp 的 Web 应用程序部署在 Tomcat 的 ROOT 目录下,那么该应用程序的访问路径将变成 http://ip:端口号/,而不是 http://ip:端口号/myapp/。这种方式可以简化 Web 应用程序的访问路径,提高用户体验。

2、默认 index.html 页面的访 问

默认的 index.html 页面是指 Web 应用程序中的默认首页文件,当用户访问 Web 应用程序的根目录时,Web 服务器会自动寻找默认的 index.html 文件并将其返回给用户。通常情况下,该文件包含了 Web 应用程序的简介、导航或者其他重要信息,是用户访问 Web 应用程序的入口。

例如,在一个名为 myapp 的 Web 应用程序中,如果存在一个名为 index.html 的文件,在用户访问 http://ip:端口号/myapp/ 时,Web 服务器会自动将该文件返回给用户。这样,用户就可以通过访问 Web 应用程序的根目录来访问默认的 index.html 页面,而无需指定具体的文件名。

六、IDEA 整合 Tomcat 服务器

操作的菜单如下:File | Settings | Build, Execution, Deployment | Application Servers
在这里插入图片描述
配置你的 Tomcat 安装目录:
在这里插入图片描述
就可以通过创建一个 Model 查看是不是配置成功!!!在这里插入图片描述

七、IDEA 中动态 web 工程的操作

1、IDEA 中如何创建动态 web 工程

  1. 创建一个新模块:

在这里插入图片描述

  1. 选择你要创建什么类型的模块:

在这里插入图片描述

  1. 输入你的模块名,点击【Finish】完成创建。

在这里插入图片描述

  1. 创建成功如下图:

在这里插入图片描述

2、Web 工程的目录介绍

在这里插入图片描述
Web 工程是指一个 Web 应用程序的开发和部署项目,包含了一系列的文件和目录。下面是 Web 工程中常见的目录介绍:

  1. WEB-INF 目录

    WEB-INF 目录是 Web 应用程序的安全目录,包含了不允许客户端直接访问的文件和目录。该目录下通常包含以下两个目录:

    • classes 目录:用于存放编译后的 Java 类文件和其他可执行文件。

    • lib 目录:用于存放 Web 应用程序所需的 jar 包和其他依赖库文件。

    WEB-INF 目录下还包含了一个 web.xml 文件,用于定义 Web 应用程序的部署描述符(Deployment Descriptor)。该文件包含了 Web 应用程序的配置信息,例如 Servlet、Filter、Listener、Error Page 等。

  2. META-INF 目录

    META-INF 目录是 Java 应用程序的元信息目录,用于存放应用程序的元信息文件。在 Web 应用程序中,META-INF 目录通常包含了 MANIFEST.MF 文件和 context.xml 文件。

    • MANIFEST.MF 文件:用于定义 Java 应用程序的元信息,例如应用程序的版本号、作者、依赖库等。

    • context.xml 文件:用于定义 Web 应用程序的上下文信息,例如数据库连接池配置、全局参数配置等。

  3. css、js 和 images 目录

    这些目录分别用于存放 Web 应用程序中的样式表、JavaScript 文件和图像文件。这些文件可以通过 HTML 页面引用,用于美化页面、实现交互和丰富内容。

  4. WEB-INF/views(或 templates)目录

    该目录用于存放 Web 应用程序的视图模板文件,例如 JSP、Thymeleaf 等。视图模板文件通常用于生成动态的 HTML 页面,实现 Web 页面的渲染和展示。

  5. WEB-INF/resources 目录

    该目录用于存放 Web 应用程序的资源文件,例如配置文件、数据库脚本、静态文件等。这些文件一般不需要直接访问,通常由 Web 应用程序的其他部分调用或读取。

以上是 Web 工程中常见的目录介绍,不同的 Web 应用程序可能会有不同的目录结构和文件组织方式。

3、如何给动态 web 工程添加额外 jar 包

  1. 可以打开项目结构菜单操作界面,添加一个自己的类库:

在这里插入图片描述

  1. 添加你你类库需要的 jar 包文件

在这里插入图片描述

  1. 选择你添加的类库,给哪个模块使用:

在这里插入图片描述

  1. 选择 Artifacts 选项,将类库,添加到打包部署中:

在这里插入图片描述

4、如何在 IDEA 中部署工程到 Tomcat 上运行

  1. 建议修改 web 工程对应的 Tomcat 运行实例名称:

在这里插入图片描述

  1. 确认你的 Tomcat 实例中有你要部署运行的 web 工程模块:

在这里插入图片描述

  1. 你还可以修改你的 Tomcat 实例启动后默认的访问地址:

在这里插入图片描述

5、在 IDEA 中如何运行,和停止 Tomcat 实例。

  1. 正常启动 Tomcat 实例:

在这里插入图片描述

  1. Debug 方式启动 Tomcat 运行实例:
    在这里插入图片描述
  2. 停止 Tomcat 运行实例:在这里插入图片描述
  3. 重启 Tomcat 运行实例:
    在这里插入图片描述

6、修改工程访问路径

在这里插入图片描述

7、修改运行的端口号

在这里插入图片描述

8、修改运行使用的浏览器

在这里插入图片描述
h)配置资源热部署


http://www.hkcw.cn/article/ngxJVvKXis.shtml

相关文章

linux服务器tomcat日志中文出现问号乱码

目录 一、场景二、排查三、原因四、解决 一、场景 tomcat日志的中文出现问号乱码 乱码示例 ??[377995738417729536]????????? ac??????????????message:二、排查 1、使用locale命令查看服务器当前使用的语言包 发现只用的语言包为utf-8&#xff0…

在【IntelliJ IDEA】中配置【Tomcat】【2023版】【中文】【图文详解】

作为一款功能强大的集成开发环境&#xff08;IDE&#xff09;&#xff0c;IntelliJ IDEA为Web服务器提供了卓越的支持&#xff0c;从而极大地简化了程序员在Web开发过程中的工作流程。学习Java Web开发实质上就是掌握如何创造动态Web资源&#xff0c;这些资源在完成开发后&…

tomcat 8 所有版本安装包

https://archive.apache.org/dist/tomcat/tomcat-8/ 此时在这里点击你要下载的版本号&#xff0c;这里大版本都是 8&#xff0c;这里演示下载 8.5.57 的过程&#xff1a; 点击后页面如下&#xff0c;再点击这里的 bin/ 我使用的linux系统选择对应的版本下载

Tomcat多应用部署与静态资源路径问题全解指南

&#x1f9d1; 博主简介&#xff1a;CSDN博客专家、CSDN平台优质创作者&#xff0c;高级开发工程师&#xff0c;数学专业&#xff0c;10年以上C/C, C#, Java等多种编程语言开发经验&#xff0c;拥有高级工程师证书&#xff1b;擅长C/C、C#等开发语言&#xff0c;熟悉Java常用开…

Tomcat 8.5 下载、安装、启动及各种问题

&#x1f970;&#x1f970;&#x1f970;来都来了&#xff0c;不妨点个关注叭&#xff01; &#x1f449;博客主页&#xff1a;欢迎各位大佬!&#x1f448; 本期内容主要介绍 Tomcat 8 的安装&#xff0c;以及可能会遇到的问题 文章目录 1. Tomcat 安装2. 可能会遇到的问题2.…

tomcat官网下载及安装

文档参考&#xff1a; (5条消息) tomcat官网下载详细步骤_成长硕果的博客-CSDN博客_tomcat怎么下载 (5条消息) Tomcat的下载及安装_InkingWT的博客-CSDN博客_tomcat下载及安装 一、Tomcat下载 1、tomcat官方网址&#xff1a;https://tomcat.apache.org 2、选择自己所需要的…

Apache Tomcat 远程代码执行漏洞(CVE-2025-24813) 超详细!

一、漏洞概述 远程代码执行漏洞(CVE-2025-24813)源于 Apache Tomcat 的反序列化机制未对用户输入进行严格验证&#xff0c;攻击者可通过构造恶意序列化对象绕过安全限制&#xff0c;处理部分 PUT 请求时&#xff0c;攻击者利用临时文件路径处理中的缺陷&#xff08;将路径分隔…

Tomcat 是什么?有什么功能和作用?为什么启动 Spring 或 Spring Boot 项目需要 Tomcat?

本文的内容是博主学习并记录关于 Tomcat 的基本知识&#xff0c;介绍了 Tomcat 为什么是一个 Web 应用服务器&#xff0c;为什么是 Servlet 容器&#xff0c;同时总结了 Tomcat 的一些功能原理&#xff0c;并详细介绍了 Tomcat 在 Spring 和SpringBoot 项目中的使用原理。本文不…

IDEA 中配置 Tomcat (详细教程)

前言 在Web项目的开发过程中&#xff0c;Tomcat 作为一款开源的Servlet容器&#xff0c;不仅能够提供稳定的运行环境&#xff0c;为开发者提供了丰富的功能支持。因此&#xff0c;本文将详细阐述在Web项目如何配置Tomcat服务器&#xff0c;包括安装检查、模块设置、路径配置、依…

tomcat 在 Linux 环境下的安装与配置教程

想部署个 Java Web 项目&#xff1f;那你八成会接触到 Tomcat。 本篇就是为 从没用过 Tomcat 的新手 写的&#xff0c;带你一步一步在 Linux 系统里把 Tomcat 装好、跑起来&#xff01; 为什么要学会用 Tomcat&#xff1f; Tomcat 是一个免费的 Java Web 服务器&#xff0c;功…

【机器学习】线性回归与逻辑回归的极致解析:从数学理论到实战案例

文章目录 1. 引言Python 代码示例 2. 线性回归2.1 线性回归的基本概念线性回归的定义数学表达式及模型假设 2.2 线性回归的工作原理最小二乘法&#xff08;Ordinary Least Squares, OLS&#xff09;梯度下降法在线性回归中的应用多元线性回归与一元线性回归的区别与联系 2.3 线…

机器学习-聚类分析算法

一、聚类分析的定义 聚类分析是一种无监督学习的统计分析方法。它的主要目的是将一个数据集中的样本&#xff08;或观测值&#xff09;按照某种相似性或距离度量划分成若干个类别&#xff08;簇&#xff09;。在聚类过程中&#xff0c;同一个簇内的样本具有较高的相似性&#…

LeetCode 热题 100 回顾

目录 一、哈希部分 1.两数之和 (简单) 2.字母异位词分组 (中等) 3.最长连续序列 (中等) 二、双指针部分 4.移动零 (简单) 5.盛最多水的容器 (中等) 6. 三数之和 (中等) 7.接雨水 (困难) 三、滑动窗口 8.无重复字符的最长子串 (中等) 9.找到字符串中…

人脸识别-特征算法

文章目录 一、LBPH算法1.基本原理2.实现步骤3.代码实现 二、Eigenfaces算法1.特点2.代码实习 三、FisherFaces算法1.算法原理2.算法特点3.代码实现 四、总结 人脸识别特征识别器是数字信息发展中的一种生物特征识别技术&#xff0c;其核心在于通过特定的算法和技术手段&#xf…

【数据结构】排序算法---计数排序(动图演示)

文章目录 1. 定义2. 算法步骤3. 动图演示4. 性质5. 算法分析6. 代码实现C语言PythonJavaGo 结语 1. 定义 计数排序又称为鸽巢原理&#xff0c;是对哈希直接定址法的变形应用。计数排序不是基于比较的排序算法&#xff0c;其核心在于将输入的数据值转化为键存储在额外开辟的数组…

【优选算法 | 哈希表】常见算法题的哈希表套路拆解

算法相关知识点可以通过点击以下链接进行学习一起加油&#xff01;双指针滑动窗口二分查找前缀和位运算模拟链表 在刷题的过程中&#xff0c;我们会频繁遇到一些“高频套路”——而哈希表正是其中最常用也最高效的工具之一。它能帮助我们在 O(1) 的时间复杂度内完成查找、插入与…

数据结构《排序》

在之前数据结构之算法复杂度章节中我们学习了复杂度相关的概念&#xff0c;这就使得懂得如何来区分算法的好坏&#xff0c;在之前C语言专题中在指针的学习时我们了解了冒泡排序&#xff0c;之后再数据结构的二叉树章节中我们又学习了堆排序&#xff0c;其实排序不止这两种&…

TSP-旅行商问题(基于动态规划或蚁群算法求解)

1. TSP问题 旅行商问题(Travelling salesman problem, TSP)是运筹学和理论计算机科学中经典的问题.具体问题如下:给定一系列城市和每对城市之间的距离,求解访问每座城市一次并回到起始城市的最短回路. 2. 动态规划 本节参考旅行商问题(动态规划) 2.1 理论介绍 假设节点数…

【算法与数据结构】深入解析二叉树(二)之堆结构实现

文章目录 &#x1f4dd;二叉树的顺序结构及实现&#x1f320; 二叉树的顺序结构&#x1f320; 堆的实现&#x1f320; 堆的实现&#x1f309;堆向下调整算法&#x1f309;堆的创建&#x1f309;建堆时间复杂度&#x1f309;堆的插入&#x1f309;堆的删除 &#x1f320;堆向上调…

【leetcode】优先级队列的两种妙用:词频统计与动态中位数(附代码模板)

前言 &#x1f31f;&#x1f31f;本期讲解关于力扣的几篇题解的详细介绍~~~ &#x1f308;感兴趣的小伙伴看一看小编主页&#xff1a;GGBondlctrl-CSDN博客 &#x1f525; 你的点赞就是小编不断更新的最大动力 &#x1f386;那么废话不…