Tomcat安装及基本使用

1. 什么是Web服务器

Web服务器是一种应用程序(软件),它封装了对HTTP协议的操作,使得开发人员无需直接操作协议,从而简化了Web开发。其主要功能是提供网上信息浏览服务。
Web服务器安装在服务器端,我们可以将自己编写的Web项目部署到Web Tomcat服务器软件中。一旦Web服务器软件启动,部署在其中的页面就可以通过浏览器直接访问。
使用Web服务器软件的步骤如下:

  • 准备静态资源
  • 下载安装Web服务器软件
  • 将静态资源部署到Web服务器上
  • 启动Web服务器,使用浏览器访问对应的资源
    在本文中,我们将使用Apache下的Tomcat软件进行演示。当然,除了Tomcat之外,还有许多其他优秀的Web服务器可供选择。
    在这里插入图片描述

2. Tomcat简介

Tomcat是Apache软件基金会的一个核心项目,是一个开源免费的轻量级Web服务器,支持Servlet/JSP少量JavaEE规范。
JavaEE是Java Enterprise Edition的缩写,即Java企业版。它指的是Java企业级开发的技术规范总和,包括13项技术规范,如JDBC、JNDI、EJB、RMI、JSP、Servlet、XML、JMS等。
由于Tomcat支持Servlet/JSP规范,因此它也被称为Web容器或Servlet容器。Servlet需要依赖Tomcat才能运行。
你可以从Tomcat的官网(https://tomcat.apache.org/)上下载适合你的版本进行使用。

3. Tomcat的基本使用

我们将分两部分学习Tomcat,首先是Tomcat的基本使用,包括下载、安装、卸载、启动和关闭。

3.1 下载

你可以直接从官网下载Tomcat软件,也可以使用本文提供的资源文件中已经下载好的版本。
在这里插入图片描述

3.2 安装

Tomcat是绿色版的,只需要解压即可。

  • 在D盘的software目录下,解压apache-tomcat-8.5.68-windows-x64.zip文件,解压后会得到一个apache-tomcat-8.5.68的目录,这样Tomcat就安装成功了。
  • 注意,解压时可以选择任意目录,但最好选择一个不包含中文和空格的目录,因为在项目部署时,路径中的中文或空格可能导致部署失败。
  • 打开apache-tomcat-8.5.68目录,你会看到以下目录结构,需要了解每个目录中包含的内容:
    • bin:包含两类文件,以.bat结尾的是Windows系统的可执行文件,以.sh结尾的是Linux系统的可执行文件。
    • webapps:用于项目部署的目录。
      至此,Tomcat的安装已经完成。
      在这里插入图片描述

3.3 卸载

卸载Tomcat非常简单,只需删除安装目录即可。

3.4 启动

双击bin目录下的startup.bat文件即可启动Tomcat。
启动后,通过浏览器访问http://localhost:8080,如果能看到Apache Tomcat的内容,说明Tomcat已经成功启动。
在这里插入图片描述

注意:在启动过程中,控制台可能会出现中文乱码,需要修改conf/logging.prooperties文件。
在这里插入图片描述

3.5 关闭

Tomcat有三种关闭方式:

  • 直接关闭运行窗口(不推荐,属于强制关闭)。
  • 运行bin目录下的shutdown.bat文件,进行正常关闭。
  • 使用Ctrl+C进行正常关闭。

3.6 配置

修改端口:

  • Tomcat的默认端口是8080,如果想要修改Tomcat启动的端口号,需要修改conf/server.xml文件。
  • 在这里插入图片描述

值得注意的是,HTTP协议的默认端口号是80。如果将Tomcat的端口号改为80,则访问Tomcat时无需输入端口号。

3.7 启动时可能出现的错误

在这里插入图片描述

  • 如果设置的端口号已被占用,启动时会报错。
  • 如果Tomcat启动窗口一闪而过,需要检查JAVA_HOME环境变量是否正确配置。
    在这里插入图片描述

以上就是Tomcat的基本使用介绍。
通过本文的学习,你需要掌握以下内容:

  1. Web服务器的作用:封装HTTP协议操作,简化开发,将Web项目部署到服务器中,对外提供网上浏览服务。
  2. Tomcat是一个轻量级的Web服务器,支持Servlet/JSP少量JavaEE规范,也被称为Web容器或Servlet容器。
    希望本文能对你理解Tomcat的基本使用有所帮助。

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

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

相关文章

电商系统架构设计系列(十):怎么能避免写出慢SQL?

上篇文章中,我给你留了一个思考题:怎么能避免写出慢SQL? 我们知道,一个慢 SQL 就可以直接让 MySQL 瘫痪。以我个人经验总结来看,一般情况下系统出问题,大多数都是因为SQL语句的问题。掌握和用好了SQL&…

全国首台!浙江机器人产业集团发布垂起固定翼无人机-机器人自动换电机巢

展示突破性创新技术,共话行业发展趋势。8月25日,全国首台垂起固定翼无人机-机器人自动换电机巢新品发布会暨“科创中国宁波”无人机产业趋势分享会在余姚市机器人小镇成功举行。 本次活动在宁波市科学技术协会、余姚市科学技术协会指导下,由浙…

RV64和ARM64栈结构差异

RV64和ARM64栈结构差异 1 RV64和ARM64栈结构差异示意图1.1 RV64和ARM64寄存器介绍1.1.1 RV64寄存器1.1.2 ARM64寄存器 1.2 RV64和ARM64栈结构差异示意图 2 RV64和ARM64栈使用示例2.1 测试的程序2.2 RV64反汇编的汇编程序2.3 ARM64反汇编的汇编程序2.4 RV64和ARM64测试程序的栈结…

数据结构day06(单向循环链表、双向链表)

双向链表的练习代码 head.h #ifndef __HEAD_H__ #define __HEAD_H__ #include <stdio.h> #include <stdlib.h> #include <string.h> typedef int database; typedef struct double_link_list{union{database data;int len;};struct double_link_list* pre;…

机器学习笔记之核函数再回首:Nadarya-Watson核回归python手写示例

机器学习笔记之核函数再回首——Nadaraya-Watson核回归手写示例 引言回顾&#xff1a; Nadaraya-Watson \text{Nadaraya-Watson} Nadaraya-Watson核回归通过核函数描述样本之间的关联关系使用 Softmax \text{Softmax} Softmax函数对权重进行划分将权重与相应标签执行加权运算 N…

python matlab 画柱状图

函数&#xff1a; bar(x, height, width0.8, bottomNone, *, aligncenter,dataNone, **kwargs) 设置坐标的刻度(ticks)&#xff0c;轴的标签和标题 在数据分析的很多时候&#xff0c;我们各个柱下面通常不是x刻度值&#xff0c;而是有实际意义的字符串&#xff0c;那么这个时…

TensorFlow-slim包进行图像数据集分类---具体流程

TensorFlow中slim包的具体用法 1、训练脚本文件&#xff08;该文件包含数据下载打包、模型训练&#xff0c;模型评估流程&#xff09;3、模型训练1、数据集相关模块&#xff1a;2、设置网络模型模块3、数据预处理模块4、定义损失loss5、定义优化器模块 本次使用的TensorFlow版本…

延迟队列的理解与使用

目录 一、场景引入 二、延迟队列的三种场景 1、TTL对队列进行延迟 2、创建通用延时消息对消息延迟 3、使用rabbitmq的延时队列插件 x-delayed-message使用 父pom文件 pom文件 配置文件 config 生产者 消费者 结果 一、场景引入 我们知道可以通过TTL来对队列进行设…

Matlab(结构化程式和自定义函数)

目录 1.脚本编辑器 2.脚本流 2.1 控制流 2.2 关系&#xff08;逻辑&#xff09;操作符 3.脚本与函数 1.脚本编辑器 Matlab的命名规则&#xff1a; 常用功能&#xff1a; 智能缩进&#xff1a; 在写代码的时候&#xff0c;有的时候代码看起来并不是那么美观&#xff08;可读性…

栈和队列(详解)

一、栈 1.1、栈的基本概念 1.1.1、栈的定义 栈&#xff08;Stack&#xff09;&#xff1a;是只允许在一端进行插入或删除的线性表。首先栈是一种线性表&#xff0c;但限定这种线性表只能在某一端进行插入和删除操作。 栈顶&#xff08;Top&#xff09;&#xff1a;线性表允许…

iPhone 15 Pro与谷歌Pixel 7 Pro:哪款相机手机更好?

考虑到苹果最近将更多高级功能转移到iPhone Pro设备上的趋势,今年秋天iPhone 15 Pro与谷歌Pixel 7 Pro的对决将是一场特别有趣的对决。去年发布的iPhone 14 Pro确实发生了这种情况,有传言称iPhone 15 Pro再次受到了苹果的大部分关注。 预计iPhone 15系列会有一些变化,例如切…

企业网络安全:威胁情报解决方案

什么是威胁情报 威胁情报是网络安全的关键组成部分&#xff0c;可为潜在的恶意来源提供有价值的见解&#xff0c;这些知识可帮助组织主动识别和防止网络攻击&#xff0c;通过利用 STIX/TAXII 等威胁源&#xff0c;组织可以检测其网络中的潜在攻击&#xff0c;从而促进快速检测…

Flutter Web 项目网络请求报 XMLHttpRequest error 解决方案

使用http库进行简单的网络请求时&#xff0c;运行在Chrome浏览器上&#xff0c;网络请求一直报错 XMLHttpRequest error&#xff0c;而在iOS 模拟器上运行则正常&#xff0c;后面在postman上发送请求&#xff0c;也是正常的。这就是很尴尬了&#xff01;&#xff01;&#xff0…

公有云与私有云,IaaS、PaaS 和 SaaS云服务模型概述

云计算主要分为 4 种类型&#xff1a;私有云、公共云、混合云和多云。同时&#xff0c;云计算服务主要有 3 种&#xff1a;基础架构即服务&#xff08;IaaS&#xff09;、平台即服务&#xff08;PaaS&#xff09;和软件即服务&#xff08;SaaS&#xff09; Saas&#xff08;Sof…

nginx-concat

为了减少tcp请求数量&#xff0c;nginx从上有服务器获取多个静态资源&#xff08;css&#xff0c;js&#xff09;的时候&#xff0c;将多个静态资源合并成一个返回给客户端。 这种前面有两个问号的请求都是用了cancat合并功能。 先到官网下载安装包&#xff0c;拷贝到服务器编译…

UDP 多播(组播)

前言&#xff08;了解分类的IP地址&#xff09; 1.组播&#xff08;多播&#xff09; 单播地址标识单个IP接口&#xff0c;广播地址标识某个子网的所有IP接口&#xff0c;多播地址标识一组IP接口。单播和广播是寻址方案的两个极端&#xff08;要么单个要么全部&#xff09;&am…

微信小程序 实时日志

目录 实时日志 背景 如何使用 如何查看日志 注意事项 实时日志 背景 为帮助小程序开发者快捷地排查小程序漏洞、定位问题&#xff0c;我们推出了实时日志功能。从基础库2.7.1开始&#xff0c;开发者可通过提供的接口打印日志&#xff0c;日志汇聚并实时上报到小程序后台…

【base64】JavaScriptuniapp 将图片转为base64并展示

Base64是一种用于编码二进制数据的方法&#xff0c;它将二进制数据转换为文本字符串。它的主要目的是在网络传输或存储过程中&#xff0c;通过将二进制数据转换为可打印字符的形式进行传输 JavaScript 压缩图片 <html><body><script src"https://code.j…

数学建模:主成分分析法

&#x1f506; 文章首发于我的个人博客&#xff1a;欢迎大佬们来逛逛 主成分分析法 算法流程 构建原始数据矩阵 X X X &#xff0c;其中矩阵的形状为 x ∗ n x * n x∗n &#xff0c;有 m m m 个对象&#xff0c; n n n 个评价指标。然后进行矩阵的归一化处理。首先计算矩…

Android Looper Handler 机制浅析

最近想写个播放器demo&#xff0c;里面要用到 Looper Handler&#xff0c;看了很多资料都没能理解透彻&#xff0c;于是决定自己看看相关的源码&#xff0c;并在此记录心得体会&#xff0c;希望能够帮助到有需要的人。 本文会以 猜想 log验证 的方式来学习 Android Looper Ha…