Java Web——TomcatWeb服务器
目录
1. 服务器概述
1.1. 服务器硬件
1.2. 服务器软件
2. Web服务器
2.1. Tomcat服务器
2.2. 简单的Web服务器使用
1. 服务器概述
服务器指的是网络环境下为客户机提供某种服务的专用计算机,服务器安装有网络操作系统和各种服务器的应用系统服务器的具有高速CPU运算能力、长时间可靠运行、强大I/O外部数据吞吐能力以及更好的扩展性.
简单概括来说,服务器可分为服务器软件和服务器硬件两部分:
- 服务器硬件:这是服务器的物理基础,包括能够提供CPU、内存等计算资源的设备。这些硬件设备通常被设计为大规模、高性能,以确保服务器能够处理大量的请求和数据。
- 服务器软件:这是运行在服务器硬件上的应用程序和系统,它们能够提供特定的服务。这些软件负责接收客户端的请求,并根据这些请求提供相应的数据和服务。服务器软件是服务器的“大脑”,负责处理和解释来自客户端的指令,然后调用硬件资源来完成任务。
总的来说,服务器硬件和软件共同构成了一个完整的服务器,使我们能够享受到各种各样的网络服务。
1.1. 服务器硬件

服务器硬件指的也是计算机,只不过服务器要比我们日常使用的计算机大很多。
服务器是一种高级计算机,它比我们平常用的电脑更强大、更稳定。服务器的作用是
提供特定的服务给其他电脑用。为了让服务器能提供更好的服务,它里面安装了一些
特别的软件和系统。所以,服务器的运算速度很快,可以长时间运行不出问题,也能
处理很多数据。并且,如果以后需要更多的服务,服务器也可以升级来满足需求。
1.2. 服务器软件
服务器软件是一种特殊的软件程序,它是基于ServerSocket编写的。这个程序是运行在服务器上的,服务器是一台非常强大的电脑。这个服务器软件可以接收来自客户端的请求,客户端可以是手机、电脑或其他设备。当客户端发出请求时,服务器软件会根据这些请求来给出相应的回应和数据。就像你向一个服务员点菜,服务员会把你点的菜给你送过来一样。服务器软件就是这样一个“服务员”,它负责接收请求并回应数据。
2. Web服务器
Web服务器是一个特殊的软件程序。它的作用是把复杂的HTTP协议操作进行简化封装,这样程序员在开发Web应用的时候,就不需要花费很多时间和精力去自己编写解析HTTP协议的代码。这就像是Web服务器为程序员提供了一个方便的“工具箱”,让他们能更高效地开发Web应用。
此外,Web服务器的主要功能是提供网上信息浏览服务。也就是说,它负责存储和发布我们可以通过浏览器查看的网页信息。

当我们开发好自己的Web项目后,我们需要把它“部署”到Web服务器软件上,比如Tomcat。这个部署过程就是把我们的Web项目“放到”Web服务器上,让服务器能够知道如何展示和运行我们的项目。当Web服务器软件启动后,我们部署在服务器上的网页就可以通过浏览器直接访问了。这样,其他人就能通过互联网查看和使用我们开发的Web应用。
2.1. Tomcat服务器

Tomcat服务器软件是一个免费、开源的web应用服务器,它是由Apache软件基金会主导的一个核心项目,并且由Apache、Sun以及其他公司和个人共同开发和维护的。
Tomcat是一个轻量级的Web服务器,因为它只支持少量的JavaEE(Java Enterprise Edition,即Java企业版)规范,主要是Servlet和JSP。JavaEE规范是Java企业级开发中的各种技术规范的总和,包括13项规范,如JDBC、JNDI、EJB等。
由于Tomcat支持Servlet/JSP规范,因此它也被人们称作Web容器或Servlet容器。这意味着,JavaWeb程序需要依赖Tomcat来运行。
Tomcat的官网: Apache Tomcat® - Welcome!
2.2. 简单的Web服务器使用
使用步骤
- 准备静态资源
- 下载安装Web服务器软件
- 将静态资源部署到Web服务器上
- 启动Web服务器使用浏览器访问对应的资源
- 准备静态资源
准备一个简单的用于前端显示的html代码


如上图显示,直接双击打开的话,地址会显示该html文件的磁盘地址,证明是本地打开,而不是通过Web服务器打开
- 下载安装Web服务器软件
这里用的Apache旗下的Tomcat,从官网下载,解压并安装到本地电脑
Tomcat的官网: Apache Tomcat® - Welcome!


- 将静态资源部署到Web服务器上
把刚刚要演示的前端html文件移动到tomcat的webapps文件夹下

- 启动Web服务器使用浏览器访问对应的资源
在tomcat的bin文件下双击startup.bat

在浏览器地址栏输入http://localhost:8080/demo/demo.html
表示从本地服务器(localhost,也就是刚才安装的tomcat)的8080端口访问demo目录下的demo.html文件。在这里,localhost指的是当前计算机,也就是你的服务器所在的计算机。8080是Web服务器的端口号,而/demo/demo.html则是服务器上的资源路径,指向了服务器中demo文件夹下的demo.html文件。
所以当你在浏览器中输入这个URL并按下回车后,浏览器会向本地计算机的8080端口发送HTTP请求,请求获取`demo/demo.html`这个资源。如果Web服务器已经正确配置,并且demo.html文件存在于正确的位置,服务器就会返回这个HTML文件,并在浏览器中显示出来。

如果此时,别人知晓了我的IP地址,在浏览器地址栏去替换localhost,在我tomcat服务器正常开启的情况下就能访问到我的这个静态资源
这里只是一个简单的演示,实际开发中要比这个复杂
相关文章:
Java Web——TomcatWeb服务器
目录 1. 服务器概述 1.1. 服务器硬件 1.2. 服务器软件 2. Web服务器 2.1. Tomcat服务器 2.2. 简单的Web服务器使用 1. 服务器概述 服务器指的是网络环境下为客户机提供某种服务的专用计算机,服务器安装有网络操作系统和各种服务器的应用系统服务器的具有高速…...
Zookeeper 命令使用和数据说明
文章目录 一、概述二、命令使用2.1 登录 ZooKeeper2.2 ls 命令,查看目录树(节点)2.3 create 命令,创建节点2.4 delete 命令,删除节点2.5 set 命令,设置节点数据2.6 get 命令,获取节点数据 三、数…...
索尼RSV文件怎么恢复为MP4视频
索尼相机RSV是什么文件? 如果您的相机是索尼SONY A7S3,A7M4,FX3,FX3,FX6,或FX9等,有时录像会产生一个RSV文件,而没有MP4视频文件。RSV其实是MP4的前期文件,经我对RSV文件…...
pytorch-gpu(Anaconda3+cuda+cudnn)
文章目录 下载Anaconda3安装,看着点next就行比较懒所以自动添加path测试 cuda安装的时候不能改路径如果出现报错,关闭杀毒软件一直下一步就好取消勾选“CUDA”中的“Visual Studio Intergration”一直下一步即可测试安装成功 cudnn解压后将这三个文件夹复…...
解析数据洁净之道:BI中数据清理对见解的深远影响
本文由葡萄城技术团队发布。转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具、解决方案和服务,赋能开发者。 前言 随着数字化和信息化进程的不断发展,数据已经成为企业的一项不可或缺的重要资源。然而,这…...
efcore反向共工程,单元测试
1.安装efcore需要的nuget <PackageReference Include"Microsoft.EntityFrameworkCore" Version"6.0.24" /> <PackageReference Include"Microsoft.EntityFrameworkCore.SqlServer" Version"6.0.24" /> <PackageRefere…...
利用IP风险画像强化金融行业网络安全防御
在数字化时代,金融行业日益依赖互联网和技术创新,但这也使得金融机构成为网络攻击的主要目标。为了应对日益复杂的网络威胁,金融机构迫切需要采用先进的安全技术和工具。其中,IP风险画像技术成为提升网络安全的一项重要策略。 1.…...
1334. 阈值距离内邻居最少的城市
分析题目两点“阈值距离”、“邻居最少”。 “阈值距离”相当于定了个上界,求节点之间的最短距离。 “邻居最少”相当于能连接的点的数量。 求节点之间的最短距离有以下几种方法: 在这道题当中,n的范围是100以内,所以可以考虑O(n…...
Live800:客服行业的发展历程及未来前景
随着信息技术和互联网的高速发展,客服行业也在不断变革和发展。客服行业是一个服务型的行业,其发展历程也与人们对服务需求的变化密切相关。本文将介绍客服行业的发展历程和未来前景。 客服行业的发展历程 20世纪70年代,客服行业主要以电话服…...
exsi的安装和配置
直接虚拟真实机 vcent server 管理大量的exsi SXI原生架构模式的虚拟化技术,是不需要宿主操作系统的,它自己本身就是操作系统。因此,装ESXI的时候就等同于装操作系统,直接拿iso映像(光盘)装ESXI就可以了。 VMware vCente…...
基于springboot实现校园医疗保险管理系统【项目源码】
基于springboot实现校园医疗保险管理系统演示 系统开发平台 在线校园医疗保险系统中,Eclipse能给用户提供更多的方便,其特点一是方便学习,方便快捷;二是有非常大的信息储存量,主要功能是用在对数据库中查询和编程。其…...
Python 如何实现组合(Composite)设计模式?什么是组合设计模式?
什么是组合(Composite)设计模式? 组合(Composite)设计模式是一种结构型设计模式,它允许客户端使用单一对象和组合对象(对象的组合形成树形结构)同样的方式处理。这样,客…...
编辑器vim和编译器gcc/g++
目录 一、编辑器vim 1、概念 2、基本操作 1、进入vim 2、模式切换 3、命令行模式 4、插入模式 5、底行模式 6、vim 的配置 二、编译器gcc/g 1、概念 2、背景知识 3、gcc/g中的编译链接 1、预处理 2、编译 3、汇编 4、链接 4、函数库 1、静态库 2、动态库 一…...
linux 系统下文本编辑常用的命令
一、是什么 Vim是从 vi 发展出来的一个文本编辑器,代码补全、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。 简单的来说, vi 是老式的字处理器,不过功能已经很齐全了,但是还是有可以进步的地方 而…...
3D Gaussian Splatting文件的压缩【3D高斯泼溅】
在上一篇文章中,我开始研究高斯泼溅(3DGS:3D Gaussian Splatting)。 它的问题之一是数据集并不小。 渲染图看起来不错。 但“自行车”、“卡车”、“花园”数据集分别是一个 1.42GB、0.59GB、1.35GB 的 PLY 文件。 它们几乎按原样…...
Spring Boot 整合xxl-job实现分布式定时任务
xxl-job介绍 XXL-JOB是一个分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线,开箱即用。 xxl是xxl-job的开发者大众点评的许雪里名称的拼音开头。 设计思想 将调度行为抽象形成“调度…...
16.最接近的三数之和
题目来源: leetcode题目,网址:16. 最接近的三数之和 - 力扣(LeetCode) 解题思路: 对数组排序后,枚举第一个值,利用双指针在第一个值固定时的第二三个值。 解题代码:…...
php 插入排序算法实现
插入排序是一种简单直观的排序算法,它的基本思想是将一个数据序列分为有序区和无序区,每次从无序区选择一个元素插入到有序区的合适位置,直到整个序列有序为止 5, 3, 8, 2, 0, 1 HP中可以使用以下代码实现插入排序算法: functi…...
import gradio时出现SyntaxError: future feature annotations is not defined解决方案
大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。喜欢通过博客创作的方式对所学的…...
视频封装格式
FLV(Flash Video) FLV封装格式 Tag Data分为Audio,Video,Script三种 TS(Transport Stream)传输流 TS文件分为三层,(倒叙更好理解) TS层:在PES层基础上加入…...
微信小程序 - 手机震动
一、界面 <button type"primary" bindtap"shortVibrate">短震动</button> <button type"primary" bindtap"longVibrate">长震动</button> 二、js逻辑代码 注:文档 https://developers.weixin.qq…...
Python爬虫(二):爬虫完整流程
爬虫完整流程详解(7大核心步骤实战技巧) 一、爬虫完整工作流程 以下是爬虫开发的完整流程,我将结合具体技术点和实战经验展开说明: 1. 目标分析与前期准备 网站技术分析: 使用浏览器开发者工具(F12&…...
全面解析各类VPN技术:GRE、IPsec、L2TP、SSL与MPLS VPN对比
目录 引言 VPN技术概述 GRE VPN 3.1 GRE封装结构 3.2 GRE的应用场景 GRE over IPsec 4.1 GRE over IPsec封装结构 4.2 为什么使用GRE over IPsec? IPsec VPN 5.1 IPsec传输模式(Transport Mode) 5.2 IPsec隧道模式(Tunne…...
CMake控制VS2022项目文件分组
我们可以通过 CMake 控制源文件的组织结构,使它们在 VS 解决方案资源管理器中以“组”(Filter)的形式进行分类展示。 🎯 目标 通过 CMake 脚本将 .cpp、.h 等源文件分组显示在 Visual Studio 2022 的解决方案资源管理器中。 ✅ 支持的方法汇总(共4种) 方法描述是否推荐…...
微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据
微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据 Power Query 具有大量专门帮助您清理和准备数据以供分析的功能。 您将了解如何简化复杂模型、更改数据类型、重命名对象和透视数据。 您还将了解如何分析列,以便知晓哪些列包含有价值的数据,…...
JAVA后端开发——多租户
数据隔离是多租户系统中的核心概念,确保一个租户(在这个系统中可能是一个公司或一个独立的客户)的数据对其他租户是不可见的。在 RuoYi 框架(您当前项目所使用的基础框架)中,这通常是通过在数据表中增加一个…...
免费PDF转图片工具
免费PDF转图片工具 一款简单易用的PDF转图片工具,可以将PDF文件快速转换为高质量PNG图片。无需安装复杂的软件,也不需要在线上传文件,保护您的隐私。 工具截图 主要特点 🚀 快速转换:本地转换,无需等待上…...
探索Selenium:自动化测试的神奇钥匙
目录 一、Selenium 是什么1.1 定义与概念1.2 发展历程1.3 功能概述 二、Selenium 工作原理剖析2.1 架构组成2.2 工作流程2.3 通信机制 三、Selenium 的优势3.1 跨浏览器与平台支持3.2 丰富的语言支持3.3 强大的社区支持 四、Selenium 的应用场景4.1 Web 应用自动化测试4.2 数据…...
vxe-table vue 表格复选框多选数据,实现快捷键 Shift 批量选择功能
vxe-table vue 表格复选框多选数据,实现快捷键 Shift 批量选择功能 查看官网:https://vxetable.cn 效果 代码 通过 checkbox-config.isShift 启用批量选中,启用后按住快捷键和鼠标批量选取 <template><div><vxe-grid v-bind"gri…...
使用 uv 工具快速部署并管理 vLLM 推理环境
uv:现代 Python 项目管理的高效助手 uv:Rust 驱动的 Python 包管理新时代 在部署大语言模型(LLM)推理服务时,vLLM 是一个备受关注的方案,具备高吞吐、低延迟和对 OpenAI API 的良好兼容性。为了提高部署效…...
