【网络开发必看】聊聊 Tomcat

文章目录

  • 1. 什么是 Tomcat
  • 2. 怎么安装 Tomcat
  • 3. Tomcat 的目录结构
    • 3.1 bin 目录
    • 3.2 conf 目录
    • 3.3 lib 目录
    • 3.4 log 目录
    • 3.5 webapps 目录
  • 4. 启动 Tomcat
  • 总结


1. 什么是 Tomcat

在这里插入图片描述
Tomcat 是一个 HTTP 服务器.

前面学习了 HTTP 协议, 知道了 HTTP 协议就是规定 HTTP 客户端和 HTTP 服务器之间的交互数据的格式.

同时也通过 ajax 和 Java Socket 分别构造了 HTTP 客户端.

HTTP 服务器我们也同样可以通过 Java Socket 来实现. 而 Tomcat 就是基于 Java 实现的一个开源免费, 也是被广泛使用的 HTTP 服务器.

2. 怎么安装 Tomcat

要想使用 Tomcat, 需要先下载安装.

在 Tomcat 官网下载即可. Tomcat 版本很多, 我们这里下载使用 Tomcat 8.
https://tomcat.apache.org/download-80.cgi

在这里插入图片描述
选择其中的 zip 压缩包, 下载后解压缩即可. (解压缩的目录最好不要带 “中文” 或者 特殊符号).

3. Tomcat 的目录结构

在这里插入图片描述
上述内容可直接跨平台, 将这个目录复制到 Linux, Mac 系统也可以直接运行.

3.1 bin 目录

在这里插入图片描述
bin 是 binary 的缩写, 表示该目录中存放的都是一些二进制文件(一般是都是可执行程序), 也有一些 jar 包, 一些脚本文件.

注意看目录中的 starup 文件

在这里插入图片描述

  • bat 后缀: 是 Windows 系统上的批处理脚本, 在 Windows 里运行这个文件, 就能直接启动 Tomcat 服务器.
  • sh 后缀: 是 Linux 系统上的 shell 脚本, 在 Linux 里运行这个文件, 就能直接启动 Tomcat 服务器.

什么是 批处理 / 脚本?

系统上有很多的命令, 执行一条命令就可以对应的完成一个工作. 有时候要完成一项任务, 需要很多个工作同时进行, 需要很多个命令配合执行. 就可以用 批处理 / 脚本 文件把多个要执行的命令串起来. (一系列动作, 先做什么, 后做什么).

3.2 conf 目录

在这里插入图片描述
conf 就是 configure(配置), 里面放了 Tomcat 的配置文件.

在这里插入图片描述

server.xml 是最主要的配置文件, 使用 xml 的格式. 可以通过修改该配置文件来 开关 / 选择 / 设置 某个功能.

3.3 lib 目录

在这里插入图片描述
这个目录中, 都是 jar 包, 放着一些 Tomcat 程序运行过程中需要的一些内容.

3.4 log 目录

在这里插入图片描述
目录中存放, 运行时的日志文件,我们有时需要查看日志,来发现定位一些问题.

3.5 webapps 目录

在这里插入图片描述
这是我们最常使用的目录, 用来放网站的, 将网站代码写好打包后, 放在这个目录下, 就可以加载运行写好的网站了.

4. 启动 Tomcat

在 bin 目录中, 双击 startup.bat 即可启动 Tomcat 服务器, 看到形如以下内容的日志, 说明启动成功.

在这里插入图片描述

在 Windows 上通过 cmd 方式启动 Tomcat 会出现乱码. 但是不影响 Tomcat 的使用.
乱码的原因是 Tomcat 默认按照 UTF-8 的编码方式处理中文. 而 windows 的 cmd 默认是 GBK 编码.
如果使用 Linux 或者 IDEA 中的终端来启动 Tomcat, 则没有乱码问题.


在浏览器中输入 127.0.0.1:8080 即可看到 Tomcat 的默认欢迎页面.
127.0.0.1 应该不陌生吧? 环回 IP, 代表本地主机.
8080 Tomcat 默认的业务端口号.
在这里插入图片描述

总结

✨ 本文介绍了网络开发使用的一个服务器 Tomcat, 聊了 Tomcat 的安装方式以及目录结构, 并且如何启动 Tomcat 服务器.
✨ 想了解更多计算机网络的知识, 可以收藏一下本人的计算机网络学习专栏, 里面会持续更新本人的学习记录, 跟随我一起不断学习.
✨ 感谢你们的耐心阅读, 博主本人也是一名学生, 也还有需要很多学习的东西. 写这篇文章是以本人所学内容为基础, 日后也会不断更新自己的学习记录, 我们一起努力进步, 变得优秀, 小小菜鸟, 也能有大大梦想, 关注我, 一起学习.

再次感谢你们的阅读, 你们的鼓励是我创作的最大动力!!!!!

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

论文笔记:AttnMove: History Enhanced Trajectory Recovery via AttentionalNetwork

AAAI 2021 1 intro 1.1 背景 将用户稀疏的轨迹数据恢复至细粒度的轨迹数据是十分重要的恢复稀疏轨迹数据至细粒度轨迹数据是非常困难的 已观察到的用户位置数据十分稀疏,使得未观察到的用户位置存在较多的不确定性真实数据中存在大量噪声,如何有效的挖…

ffmpeg安装教程(windows、Linux下python环境)

本文旨在向大家介绍ffmpeg在Windows和Linux系统中的安装方法。 目录 一、Windows 安装 ffmpeg1.1 官网下载 ffmpeg 运行程序1.2 环境配置1.3 测试 二、Linux 安装ffmpeg2.1 Linux中安装ffmpeg2.2 python环境安装 ffmpeg2.1.1 为什么要介绍这个2.1.1 成功安装示例 一、Windows …

OpenCV-Python小应用(九):通过灰度直方图检测图像异常点

OpenCV-Python小应用(九):通过灰度直方图检测图像异常点 前言前提条件相关介绍实验环境通过灰度直方图检测图像异常点代码实现输出结果 参考 前言 由于本人水平有限,难免出现错漏,敬请批评改正。更多精彩内容&#xff…

笔记:AI量化策略开发流程-基于BigQuant平台(一)

从本文开始,按照AI策略开发的完整流程(共七步),上手在BigQuant平台上快速构建AI策略。本文首先介绍如何使用证券代码模块指定股票范围和数据起止日期。重要的事情说三遍:模块的输入端口有提示需要连线的上游数据类型&a…

Activiti6工作流引擎:Form表单

表单约等于流程变量。StartEvent 有一个Form属性,用于关联流程中涉及到的业务数据。 一:内置表单 每个节点都可以有不同的表单属性。 1.1 获取开始节点对应的表单 Autowired private FormService formService;Test void delopyProcess() {ProcessEngi…

十八数藏的新时代探索:数字创新助推文化保护

在这个数字化的新时代,传统文化和数字创新的结合呈现出令人振奋的新面貌。十八数藏,作为文化数字创新的佼佼者,正以数字化的手段助推文化的保护与传承。 十八数藏通过数字技术,将传统非物质文化遗产以数字形式呈现,使其…

红黑树-RBTree

目录 1. 红黑树的概念2. 红黑树的性质3. 结点的定义4. 结点的插入5. 整体代码 1. 红黑树的概念 红黑树,是一种二叉搜索树,但在每个结点上增加一个存储位表示结点的颜色,可以是Red或Black。 通过对任何一条从根到叶子的路径上各个结点着色方式…

Echarts柱状体实现滚动条动态滚动

当我们柱状图中X轴数据太多的时候,会自动把柱形的宽度挤的很细,带来的交互非常不好,因此就有一个属性来解决:dataZoom 第一种简易的版本,横向滚动。 dataZoom: {show: true, // 为true 滚动条出现realtime: true, // 实…

第七章 块为结构建模 P4|系统建模语言SysML实用指南学习

仅供个人学习记录 这部分感觉很模糊,理解的不好,后面的图也没画了,用到的时候再来翻书 应用端口实现接口建模 端口port表示了块边界上的一个访问点,也可以是由该块分类的任何组成或引用边界上的可访问点。一个块可以有多个端口规…

Java学习 10.Java-数组习题

一、创建一个 int 类型的数组, 元素个数为 100, 并把每个元素依次设置为 1 - 100 代码实现 public static void main(String[] args) {int[] arrnew int[100];for (int i 0; i < arr.length; i) {arr[i]i1;}System.out.println(Arrays.toString(arr));} 运行结果 二、改变…

指针传 1

1. 内存 在计算机中内存划分为⼀个个的内存单元&#xff0c;每个内存单元的⼤⼩取1个字节。每个内存单元放了八个bite位&#xff0c;就像我们在高中时住的八人间&#xff0c;那么每个人就代表了一个bite位。 每个内存单元也都有⼀个编号&#xff08;这个编号就相当 于我们所住…

2000-2022年上市公司数字化转型同群效应数据

2000-2022年上市公司数字化转型同群效应数据 1、时间&#xff1a;2000-2022年 2、指标&#xff1a;股票代码、年份、行业代码、行政区划代码、数字化转型程度-A、数字化转型程度-B、同行业同群-数字化转型程度-A_均值、同行业同群-数字化转型程度-A_中位数、同省份同群-数字化…

odoo16 库存初始化 excel导入问题

最近在为一家公司实施odoo时&#xff0c;发现库存模块实施过程中按用户实际&#xff0c;产品初始化就是个问题。下面一一记录下 一个新公司&#xff0c;产品都有上百种&#xff0c;甚致几千种&#xff0c;如何把现有产品数据录入系统就是个不小的活。odoo16是有导入导出功能不…

1994-2021年分行业二氧化碳排放量数据

1994-2021年分行业二氧化碳排放量数据 1、时间&#xff1a;1994-2021年 2、来源&#xff1a;原始数据整理自能源年鉴 3、指标&#xff1a;统计年度、行业代码、行业名称、煤炭二氧化碳排放量、焦炭二氧化碳排放量、原油二氧化碳排放量、汽油二氧化碳排放量、煤油二氧化碳排放…

管理能力测评,如何提升管理能力?

管理能力是综合能力的体现&#xff0c;通常也解读为组织管理能力&#xff0c;如果要再细分的话&#xff0c;可能还包括有沟通能力&#xff0c;协调能力&#xff0c;组织能力&#xff0c;执行力和专业能力等等。不过没有办法说的太细节&#xff0c;因为每个部分铺开了都是一个独…

基于51单片机RFID射频门禁刷卡系统设计

**单片机设计介绍&#xff0c; 基于51单片机RFID射频门禁刷卡系统设计 文章目录 一 概要二、功能设计设计思路 三、 软件设计原理图 五、 程序程序 六、 文章目录 一 概要 基于51单片机RFID射频门禁刷卡系统&#xff0c;是一种将单片机技术和射频标识技术应用于门禁控制系统的…

自主开发刷题应用网站H5源码(无需后端无需数据库)

该应用使用JSON作为题库的存储方式&#xff0c;层次清晰、结构简单易懂。 配套的word模板和模板到JSON转换工具可供使用&#xff0c;方便将题库从word格式转换为JSON格式。 四种刷题模式包括顺序刷题、乱序刷题、错题模式和背题模式&#xff0c;可以根据自己的需求选择适合的模…

接口--抽象方法

回答问题&#xff1a; 1.接口是什么&#xff1f; 2.接口中可以包含什么内容&#xff1f; 3.如何定义接口格式&#xff1f; 4.接口定义抽象方法格式&#xff1f; Code //接口是公共规范标准&#xff0c;类似于“模具” //如何定义接口格式&#xff1f;/** public interface 接…

写在 Chappyz 即将上所之前:基于 AI 技术对 Web3 营销的重新定义

前不久&#xff0c;一个叫做 Chappyz 的项目&#xff0c;其生态代币 $CHAPZ 在 Seedify、Poolz、Decubate、ChainGPT、Dao Space 等几大 IDO 平台实现了上线后几秒售罄&#xff0c;并且 Bitget、Gate.io、PancakeSwap 等几大平台也纷纷表示支持&#xff0c;并都将在 11 月 13 日…

“目标值排列匹配“和“背包组合问题“的区别和leetcode例题详解

1 目标值排列匹配 1.1 从目标字符串的角度来看&#xff0c;LC139是一个排列问题&#xff0c;因为最终目标子串的各个字符的顺序是固定的&#xff1f; 当我们从目标字符串 s 的角度来看 LC139 “单词拆分” 问题&#xff0c;确实可以认为它涉及到排列的概念&#xff0c;但这种…