认识Tomcat (一)

认识Tomcat (一)

一、服务器

在这里插入图片描述

1.1 服务器简介

​ 硬件服务器的构成与一般的PC比较相似,但是服务器在稳定性、安全性、性能等方面都要求更高,因为CPU、芯片组、内存、磁盘系统、网络等硬件和普通PC有所不同。

​ 软件服务器(英文名称Server),也称伺服器。指一个管理资源并为用户提供服务的计算机软件,通常分为文件服务器、数据库服务器和应用程序服务器。运行以上软件的计算机或计算机系统也被称为服务器。

1.2 JavaEE应用服务器(JavaEE Application Server**)**

​ 应用服务器是Java EE规范的具体实现, 可以执行/驱动基于JavaEE平台开发的web项目。绝大部分的应用服务器都是付费产品。

常见的应用服务:

Weblogic(BEA Oracle 收费)

Webshpere(IBM 收费)

JBoss(RedHad 收费)

Geronimo(Apache 免费)

1.3 Web容器(Web Server)

只实现了JavaEE平台下部分技术标准,如Servlet,Jsp,JNDI,

JavaMail。Web容器是开源免费的。

Tomcat(Apache 开源免费)

Jetty(Jetty 开源免费)

二、Tomcat的使用

2.1 Tomcat简介

​ Tomcat服务器是Apache的一个开源免费的Web容器。它实现了JavaEE平台下部分技术规范,属于轻量级应用服务器。

2.2 Tomcat作用

​ 可以在Tomcat中运行我们所编写的Servlet、JSP。

在这里插入图片描述

三、Tomcat的下载与安装

3.1 Tomcat下载

下载地址:http://tomcat.apache.org/

3.2 Tomcat安装

Tomcat 是绿色软件,下载解压之后即可使用。

3.3 配置环境变量

Tomcat是用Java语言开发的Web容器,所以在使用Tomcat时需要在操作系统中正确配置环境变量。

JAVA_HOME:C:\Program Files\Java\jdk1.8.0_171

PATH:%JAVA_HOME%\bin;

CLASS_PATH:%JAVA_HOME%\lib;

3.4 Tomcat启动黑屏直接退出

这是因为下载之后,没有在系统变量中配置环境变量无法启动。配置上面的环境变量即可。

四、Tomcat目录结构与介绍

在这里插入图片描述

4.1 bin

bin目录主要是用来存放tomcat的命令文件,主要有两大类,一类

是以.sh结尾的(linux命令),另一类是以.bat结尾的(windows命

令)。

4.2 conf

conf目录主要是用来存放tomcat的一些配置文件。

4.3 lib

lib目录主要用来存放tomcat运行需要加载的jar包。在这个目录中需要注意下面这两个包
在这里插入图片描述

4.4 logs

logs目录用来存放tomcat在运行过程中产生的日志文件。

4.5temp

temp目录用户存放tomcat在运行过程中产生的临时文件。(清空

不会对tomcat运行带来影响)

4.6webapps

webapps目录用来存放应用程序,当tomcat启动时会去加载

webapps目录下的应用程序。可以以文件夹、war包的形式发布应

用。

4.7work

work目录用来存放tomcat在运行时的编译后文件,例如JSP编译后

的文件。

在这里插入图片描述

五、Tomcat基本使用

在这里插入图片描述

在Windows系统下启动 .bat文件,在Linux系统下启动.sh 文件

在这里插入图片描述

Tomcat的启动与关闭需要执行bin目录中的命令脚本。

5.1 Tomcat启动

方式一

运行startup.bat文件。

方式二

catlina.bat start

其中catlina.bat是命令文件,start是启动Tomcat参数。

这个是一串命令需要在终端启动。

5.2 Tomcat关闭

方式一

运行shutdown.bat文件。

方式二

catlina.bat stop

其中catlina.bat是命令文件,stop是关闭Tomcat参数。

这个是一串命令需要在终端启动。

方式三

直接关闭掉控制台窗口。

这种方式关闭可能会关闭不完全,下次启动时候报错。

5.3 访问Tomcat

访问Tomcat的URL格式:

http://ip:port

访问本机Tomcat的URL格式:

http://localhost:8080

5.4 Tomcat配置文件介绍

Tomcat 的配置文件由4个xml组成,分别是 context.xml、web.xml、server.xml、tomcat-users.xml。每个文件都有自己的功能与配置方法。

context.xml

context.xml 是 Tomcat 公用的环境配置。 Tomcat 服务器会定时

去扫描这个文件。一旦发现文件被修改(时间戳改变了),就会自

动重新加载这个文件,而不需要重启服务器 。

web.xml

Web应用程序描述文件,都是关于是Web应用程序的配置文件。所

有Web应用的 web.xml 文件的父文件。

server.xml

是 tomcat 服务器的核心配置文件,server.xml的每一个元素都对

应了 tomcat中的一个组件,通过对xml中元素的配置,实现对

tomcat中的各个组件和端口的配置。

tomcat-users.xml

配置访问Tomcat的用户以及角色的配置文件。

在这里插入图片描述

5.5 解决控制台乱码

控制台产生乱码的原因是在Tomcat在输出日志中使用的是UTF-8编

码,而我们中文的Windows操作系统使用的是GBK编码。由于编码

格式不统一,所以出现了乱码。

解决方式:

修改conf目录中的logging.properties文件重新指定的编码方式。

java.util.logging.ConsoleHandler.encoding =GBK

在这里插入图片描述

5.6修改Tomcat监听端口

Tomcat默认监听端口为8080。可以通过修改server.xml文件来改变

Tomcat的监听端口。

在这里插入图片描述

5.6 配置Tomcat Manager

5.6.1 什么是Tomcat Manager

Tomcat Manager是Tomcat自带的、用于对Tomcat自身以及部署

在Tomcat上的应用进行管理的web应用。默认情况下,Tomcat

Manager是处于禁用状态的。准确的说,Tomcat Manager需要以

用户角色进行登录并授权才能使用相应的功能,不过Tomcat并没有

配置任何默认的用户,因此我们需要先进行用户配置后才能使用

Tomcat Manager。

5.6.2 配置Tomcat Manager的访问用户

Tomcat Manager中没有默认用户,我们需要在tomcat-users.xml

文件配置。Tomcat Manager的用户配置需要配置两个部分:角色

配置、用户名及密码配置。

5.6.3 Tomcat Manager中的角色分类

manager-gui角色:

允许访问HTML GUI和状态页面(即URL路径为/manager/html/*)

manager-script角色:

允许访问文本界面和状态页面(即URL路径为/manager/text/*)

manager-jmx角色:

允许访问JMX代理和状态页面(即URL路径为/manager/jmxproxy/*)

manager- status角色:

仅允许访问状态页面(即URL路径为/manager/status/*)

5.7 配置用户及角色

修改tomcat-users.xml

在这里插入图片描述

5.8 解除访问限制

进入Tomcat的webapps目录下,打开webapps/manager/METAINF/context.xml文件,修改下面这段配置。可以在任意IP下访问Tomcat。

为/manager/jmxproxy/*)

manager- status角色:

仅允许访问状态页面(即URL路径为/manager/status/*)

5.7 配置用户及角色

修改tomcat-users.xml

[外链图片转存中…(img-iWY3JWqj-1707059048553)]

5.8 解除访问限制

进入Tomcat的webapps目录下,打开webapps/manager/METAINF/context.xml文件,修改下面这段配置。可以在任意IP下访问Tomcat。

在这里插入图片描述

  • 27
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: Tomcat 8.5.81的源码文件是指完整的Tomcat 8.5.81版本的源代码文件集合。Tomcat是一个由Apache基金会开发的开源Java Servlet容器,用于实现Java Servlet和JavaServer Pages (JSP)技术。Tomcat 8.5.81是Tomcat 8.5系列的一个特定版本,而8.5系列是Tomcat 8.x版本的一个分支。 Tomcat 8.5.81的源码文件包含了Tomcat服务器的所有实现细节和逻辑。它包括了各个核心组件的源代码,如连接器(Connector)、容器(Container)、Servlet和JSP引擎等。通过阅读这些源码文件,可以深入了解Tomcat服务器是如何处理HTTP请求、解析请求、分发请求到对应的Servlet和JSP等。 源码文件中的每个类都对应着Tomcat服务器的不同功能模块。这些文件包含了Java类和接口的定义、方法的实现以及注释说明等。通过研究源码,可以理解到Tomcat的内部工作原理,并可以根据需要进行定制化或扩展开发。 在Tomcat 8.5.81的源码文件中,可能会涉及到线程池、连接池、请求处理流程、安全机制、Session管理、Web应用程序部署等一系列关键组件和功能。此外,还可以进一步了解Apache的Catalina容器、Jasper引擎、Apr库等的实现细节。 总而言之,Tomcat 8.5.81的源码文件提供了深入了解Tomcat服务器内部实现的机会,可以通过阅读和研究源码,对Tomcat有更全面和深入的认识,并对其进行定制化开发、问题排查和性能优化等方面提供了便利。 ### 回答2: Tomcat 8.5.81的源码文件是用Java编写的,用于构建和运行基于Java Servlet、JavaServer Pages (JSP) 和Java WebSocket 的web应用程序。源码文件包含了Tomcat的核心组件和功能实现。 Tomcat 8.5.81的源码文件主要包括以下几个重要的部分: 1. Connector模块:负责处理与客户端的连接,包括HTTP、HTTPS和AJP协议等。在源码文件中,Connector模块涉及到的类主要包括Connector类、Request类、Response类等。这些类实现了连接的建立、请求的解析和响应的发送等功能。 2. Container模块:负责管理和处理Servlet和JSP等组件,包括请求分发、生命周期管理和会话管理等。在源码文件中,Container模块涉及到的类主要包括Context类、Wrapper类等。这些类实现了Servlet和JSP组件的创建、初始化和处理等功能。 3. Catalina模块:作为Tomcat的核心组件,负责整体的服务器管理和控制。Catalina模块涉及到的源码文件比较复杂,包括了容器的启动、配置加载、线程池管理等。其中,Catalina类、Server类和Service类是Catalina模块的主要组成部分。 此外,Tomcat 8.5.81的源码文件还包括了一些辅助的模块和工具类,如日志模块(使用了Commons Logging框架)、认证模块(实现了基本的用户认证和授权)以及内存缓存模块(用于提高性能)等。 值得注意的是,Tomcat 8.5.81的源码文件是一个庞大的项目,包含了数十万行代码。阅读和理解整个源码需要一定的Java和Web开发经验。为了更好地理解和使用Tomcat,建议先熟悉相关的Servlet和JSP编程,并对Java的网络编程有一定的了解。 ### 回答3: Tomcat 8.5.81 是一个非常流行的 Java Web 服务器,它的源代码文件是编写 Tomcat 运行的核心部分的文件。 Tomcat 的源代码文件包含各种 Java 类和配置文件。其中最重要的文件是 Tomcat 的启动类,例如:Catalina、StandardServer 和 Bootstrap。这些类是整个服务器的入口点,负责初始化和启动服务器。 除了启动类,Tomcat 源码文件还包括了一些核心组件,如连接器(Connectors)、容器(Containers)、Realm 和 Valve 等。连接器负责处理 HTTP 请求和响应,容器用于托管网页和应用程序,Realm 用于管理用户认证和授权,Valve 用于在处理请求和响应时添加额外的处理逻辑。 此外,Tomcat 的源码文件还包括了一些模块和扩展,用于支持 Tomcat 的各种功能和特性。例如,Catalina 模块提供了 Servlet 容器的实现,NIO 模块提供了高效的非阻塞 I/O 功能,WebSocket 模块支持 WebSocket 技术等等。 总而言之,Tomcat 8.5.81 的源码文件是构成整个 Tomcat Web 服务器的核心组成部分。通过阅读和理解这些源码文件,开发人员可以深入了解 Tomcat 的工作原理,并在需要的时候进行二次开发或自定义扩展。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值