• Tomcat 的安装以及其中配置环境原理的详细说明


    Tomcat 的安装详解

    在这里插入图片描述


    每博一文案

    作家卢思浩说。我们东奔西走,付出越来越谨慎,经不起世间的浪费,
    真心越来越难得,熬不起,日日夜夜,在不断的相遇于离别中看多了,
    人情冷暖,看尽了人生百态,渐渐的明白了。有些人,无法一直相伴,
    不是缘分不够深,而是人心不同。人因不惜而散,心因不诚而凉,人与人之间
    的交往,就是一个以心换心的过程。很多感情明明有一个美好的开始,最终却以不欢而散收场。
    很多缘分,因为没有好好珍惜,最终还是在人海中擦肩而过,这世上好看的是不少,好听的话也很多,
    而最难得的便是一个针子,总有人会和你耍心眼,怕自己吃亏,也怕自己吃苦,最怕掏出的是一颗真心,
    还回来的是毫不在乎,最怕给出的是一份信任,换回来的是无情辜负。
    不是所有的真心都能换来感情,也不是所有的付出都能换来同等的回报。
    人心换人心,换不来就转身,你可以选,你所选,也可以舍我而去。
    但请坦然相告,不要为了某些目的,
    只有一副深情的面具,把喜欢夸张成爱意,把一时夸张成一世,
    一辈子相遇不少,但真正用心在乎你的,寥寥无几,愿你常珍惜。
                                    ——————   一禅心灵庙语
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14


    Tomcat 的基本介绍

    Tomca t是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。

    Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应HTML标准通用标记语言下的一个应用)页面的访问请求。实际上Tomcat是Apache 服务器的扩展,但运行时它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。

    **Wed服务器软件都有那些呢 ?(这些软件都是提前开发好的) **

    • Tomcat (Web服务器)
    • jetty (Web服务器)
    • JBOSS (应用服务器)
    • WebLogic (应用服务器)
    • WebSphere (应用服务器)

    Tomcat 开源免费的轻量级的 Web服务器。

    Tomcat 还有另外一个名字:catalina (catalina 是美国的一个岛屿,风景优美,据说作者是在这个风景优美的小岛上开发的一个轻量级的 Web 服务器,体积小,运行速度快,因此 tomcat 又被称为 catalina ),看来,这就一番大事业少不了,一个风景优美的环境呀。

    Tomcat 只实现了 JavaEE 13 中规范的其中两种 (Server + JSP)

    **Tomcat 是使用Java语言编写的,所以想要运行 Tomcat服务器,就需要先有 jre,安装好 JDK,配置好 Java运行环境 **


    应用服务器 与 Web 服务器的关系 ???

    1. 应用服务器实现了 JavaEE 的所有规范,(JavaEE 一共大概有 13 个不同的规范)
    2. Web 服务器只实现了 JavaEE 中的 Server + JSP这两种核心的规范
    3. 通过这个讲解说明了:应用服务器是包含了 Web服务器的。
    4. 用过 JBOSS 服务器的应该知道,JBOSS中内嵌了一个 Tomcat 服务器。

    而我们的主角 Tomcat 只实现了 JavaEE规范中的 Server + JSP 规范

    Tomcat 的安装

    Tomcat 是Apache 软件基金会开发的,我们可以从其官网中下载。

    Apache 官网地址:Apache

    在这里插入图片描述

    在这个官网上下滑到最下面,可以看到所有 apache 开源的所有项目:如下图

    还非常人性化的使用26个字母排序好了。

    在这里插入图片描述

    找到 T 开头的里面有我们需要安装的 Tomcat ,如下图:找到点击它。

    在这里插入图片描述


    它就会索引到 Tomcat 的页面上:如下图

    Tomcat官网地址:Tomcat

    在这里插入图片描述


    Download 选择你需要的 Tomcat的版本,这里我选择 Tomcat.8 的版本下载。点击,如下图所示:

    在这里插入图片描述


    下滑找到,如下图片内容:因为我的电脑是 64 位的所以我就下载 64 位的了。这里我点击 :64-bit Windows zip(pgp.sha512) 下载。
    在这里插入图片描述


    下载好后,我们会发现它是 .zap 后缀的是一个压缩文件,我们需要将其安装包/或者是压缩包解压到指定自行定义的目录中,注意: 解压到的目录路径不可以含有中文 ,不然可能安装好后,却无法运行。

    在这里插入图片描述


    这里的安装方式和大家以往的不太一样,没有一个安装向导的过程,它解压就是安装,解压好了就是安装好了

    注意了 解压存放的位置下的路径不要包含中文,不然可能无法运行 ,大家可以自定义一个目录用于存放 (这里我有一个好习惯就是新建一个 dev目录,Java开发的所有相关的工具都安装到 dev目录下,这样方便管理,大家随意即可)。如下图所示: 这里我将其解压后重新命名为了 tomcat8 ,方便记忆。大家可以不用重新命名,直接使用原名就可以了。

    在这里插入图片描述


    按照上述操作,解压好后,大家就把 Tomcat 完全安装好了。

    至于如何启动,大家请接着往下看,下去,谢谢。

    Tomcat 服务器的目录结构解析

    认识,学习一个软件,当然是先了解它的目录结构了,如下图是 Tomcat 的目录结构

    在这里插入图片描述


    • bin文件夹 : 这个目录是 Tomcat服务器的命令文件存放的目录,比如一些:启动Tomcat, 关闭Tomcat等等。

    在这里插入图片描述


    • conf文件夹 :这个目录是 Tomcat 服务器的配置文件存放目录。如 (Server.xml 文件中可以配置 Tomcat的端口号,这里Tomcat默认端口号是 8080),还有 (logging.properties文件中可以配置显示的字符集格式,解决启动 Tomcat 出现的乱码问题 )

    在这里插入图片描述


    • lib文件夹 : 这个目录是 Tomcat 服务器的核心程序目录,因为 Tomcat服务器都是Java语言编写的,这里的jar 包里面都是 class文件。

    在这里插入图片描述


    • logs文件夹 : Tomcat服务器的日志目录,Tomcat服务器启动等信息都会在这个目录下生成日志文件。

    在这里插入图片描述


    • temp文件夹 : Tomcat 服务器的临时目录,存放临时文件。

    在这里插入图片描述


    • webapps文件夹 :这个目录当中就是用来存放大量的 (Webapp(Wed application: Web应用)

    在这里插入图片描述


    • work文件夹 : 这个目录是用来存放 JSP文件翻译之后的 java 文件以及编译之后的 calss 文件。

    在这里插入图片描述


    Tomcat 的启动

    启动前Java环境的配置

    Tomcat是Java语言编写的

    Tomcat 服务器想要运行,必须先把 jre (Java运行环境配置好 )

    Tomcat 是使用Java语言编写的,所以想要运行 Tomcat服务器,就需要先有 jre,安装好 JDK,配置好 Java运行环境

    配置环境 JAVA_HOME 就是 Java的根目录 (就是你安装Java时存放的所在的根目录),如下图所示

    在这里插入图片描述

    在这里插入图片描述


    JAVA_HOME
    
    • 1

    JAVA_HOME 配置环境是一个Java——> bin 目录下的路径:

    从上图看,可以看到我的目录是在C:\Program Files\Java\jdk1.8.0_202 中的,注意最不用含有中文目录

    我们找到我们电脑上的 高级系统设置 ——> 环境变量

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述


    点击 新建 一个变量名 JAVA_HOME

    JAVA_HOME
    
    • 1

    变量值为,你所安装的 Java的所在位置下的 bin 目录的绝对路径:如下图我的是在:C:\Program Files\Java\jdk1.8.0_202

    在这里插入图片描述

    C:\Program Files\Java\jdk1.8.0_202
    
    • 1

    在这里插入图片描述


    再然后我们配置一下 :Path 的环境变量。再系统变量中找到一个名为 Path 的变量名,找到后点击它,

    配置Path, 需要注意Path路径一般是存在的,只需要追加即可。这里使用%JAVA_HOME%的意思是直接引用上面配置的JAVA_HOME的值,这样的好处在于,如果Java安装目录发生变话,主需要修改JAVA_HOME的值,不用再修改Path变量的值。

    %JAVA_HOME%\bin
    
    • 1

    在这里插入图片描述

    在这里插入图片描述


    这样我们就算把Java的环境变量给配置好了。大家可以进入 dos 命令验证看看

    输入: javac -version , 查看Java的编译环境
    
    • 1

    在这里插入图片描述

    输入:java -version , 查看Java的运行环境
    
    • 1

    在这里插入图片描述

    注意:运行环境的版本必须 >= 编译环境的版本 ,如果我们把运行环境比作是一个粉碎机,编译环境比作是需要粉碎的对象

    运行环境版本 < 编译环境的版本: 当我们的运行环境(粉碎机)是一台简单的粉碎纸张的机器,而你的编译环境(粉碎对象)是一个石头,粉碎机就无法粉碎石头了。还会损坏粉碎机。

    运行环境的版本 >= 编译环境的版本: 当我们的运行环境(粉碎机)是一台厉害的粉碎钻石的机器,而你的编译环境(粉碎对象)无论是一个石头,还是纸张,我们的粉碎机都可以将其粉碎。

    环境的配置意义解析

    JAVA_HOME = C:\Program Files\Java\jdk1.8.0_202
    Path = %JAVA_HOME%\bin
    
    • 1
    • 2

    环境变量其实是一个路径集,当我们在 dos 中输入命令被执行时,系统会在环境变量中 Path 中进行路径查找,如果找到了,就停止查找,执行命令。

    如我们执行Java程序时使用的命名:java,javac 都是可以在我们所配置的 C:\Program Files\Java\jdk1.8.0_202\bin 中找到的,如下图所示:

    在这里插入图片描述


    第一:JAVA_HOME 环境变量,值为 JDK安装的目录,为什么要这么配置呢,主要是因为很多开源的软件依赖到这个变量,用于寻找机器上的Java环境中的 java,javac 的两个程序等等,比如我们的 Tomcat, Maven 都需要这个变量:JAVA_HOME

    在这里插入图片描述

    第二:Path 变量值是:%JAVA_HOME%\bin是Java命令的路径,道理很简单,就是希望能够在Dos命令行中,直接使用JDK提供的命令,比如:Java,javac

    我们可以通过 Dos命令的方式直接运行 java,javac ,通过配置好的环境变量的值,系统自动去该路径下找到我们需要执行的 java.exe,javac.exe 的程序,而不用我们输入完整的路径:去找到这个java.exe这个可执行程序。

    在这里插入图片描述

    %...% 表示引用某某环境变量的值,这里我们的 Path = %JAVA_HOME%\bin的意思是直接引用我们上一步配置好的 JAVA_HOME的值,这样做的好处就是,如果我们Java安装目录发生了变化,我们只需要修改 JAVA_HOME 环境变量的值就可以了(修改成发生变化后的Java的安装目录),不用再修改 Path 环境变量的值了,是你的环境变量更加健壮,美观,上档次。


    Tomcat的启动

    在我们所安装的 Tomcat ——> bin ——> 有一个 startup.bat 文件,我们通过直接点击它就可以直接启动,Tomcat 服务器了,如下图所示:

    • xxx.bat : 后缀的文件是 Windows操作系统专用的,后缀为.bat 的文件是批处理文件,这种文件可以编写大量的 Windows的 Dos 命令,然后执行 bat 文件就相当于批量的执行了 Dos 命令。

    从下图中我们可以看到还有一个名为 startup 的文件,只不过后缀为.sh

    • xxx.sh :这个文件在 Windows当中是无法执行了,因为它是 Linux 系统下的 Shell文件,在 Linux环境当中才可以使用,在Linux环境下能够执行的是 Shell命令(与Windows下的 Dos 类似),大量的 Shell 命令编写在.sh该后缀文件当中,然后执行这个 Shell文件可以批量的执行 Linux下的Shell 命令。
    • Tomcat 服务器提供了 .bat.sh 文件,说明了这个 Tomcat 服务器的通用性好。

    在这里插入图片描述

    运行如下:

    在这里插入图片描述

    从上述执行的代码上我们可以看到,在控制台上出现了许多的中文乱码:

    我们可通过修改其中的配置,不再出现乱码的现象:上述的Tomcat目录讲解中,说过了,Tomcat 的配置目录是 conf。我们打开 conf 目录 ——> 打开其中的 logging.properties文件,打开它,如下图所示:

    修改其中的一个名为 java.util.logging.ConsoleHandler.encoding = UTF-8的把其中的 UTF-8的字符集修改为 GBK 的字符集就可以了,最后 Ctrl + s 保存一下。

    java.util.logging.ConsoleHandler.encoding = GBK
    
    • 1

    在这里插入图片描述

    在这里插入图片描述

    如下图所示就没有乱码了。

    在这里插入图片描述


    启动 Tomcat 不要把它关了。打开我们的浏览器,在地址栏上输入:http://www.localhost:8080/ ,可以打开如下页面资源,说明 Tomcat 安装启动没有问题。

    localhost 表示的本地计算机的IP地址,8080 表示的是这个Tomcat服务器默认的端口号

    http://www.localhost:8080/
    
    • 1

    在这里插入图片描述

    或者使用http://127.0.0.1:8080/ 也是可以的。

    127.0.0.1 表示的是本计算机的IP地址。

    http://127.0.0.1:8080/
    
    • 1

    在这里插入图片描述


    Tomcat 启动失败的原因

    1. 运行时,失败:黑窗口一闪而过:

    原因是:没有正确配置 JAVA_HOME的环境变量,以及Path 环境变量

    解决方案: 重新正确配置好 JAVA_HOME, Path 的环境变量

    JAVA_HOME= C:\Program Files\Java\jdk1.8.0_202 (就是Java的根目录)
    Path = %JAVA_HOME%\bin    (就是java中的 bin目录(含有运行文件))
    
    • 1
    • 2
    1. 同样是画面一闪而过,启动时错误。

    原因是:可能是 Tomcat 默认的 8080 端口,被其他的程序占用了。在同一台计算机上端口号不能重复,否则,就会产生端口号冲突,导致其中的程序无法运行。

    解决方案:

    1. 暴力快捷,找到占用 Tomcat 8080端口的,进程,并将该进程关闭。就可以了

    我们打开 Dos命令的窗口,输入:netstat -ano命令查看计算机上的所有进程。

    netstat -ano
    
    • 1

    找到其中的 8080 端口对应的 进程 这里的是 12608 ,这里的界面不太友好,大家根据 顺序一个一个对应上。

    记住上面 8080 端口对应的进程编号(12608),我们需要使用它。

    在这里插入图片描述

    再打开我们的任务管理器:找到我们刚刚找到的占用 8080 端口号的 进程(PID)编号 ,右击关闭它就可以了。

    在这里插入图片描述

    再次启动 Tomcat 就没有问题了。


    1. 第二种解决方案,修改 Tomcat 默认的端口好,改为其他的端口好

    一般会将 Tomcat 的端口好改为 80,因为 80 端口号是 http 协议默认的端口号,这样我们在使用 Tomcat 就不用在输入 80 端口号了,http 会自动附加上

    找到上述我们说过的Tocmat 配置文件的目录 conf ——> 找到一个名为 server.xml 的文件,打开。如下图所示:

    在这里插入图片描述

    在该(server.xml)文件中找到标签中的 port 的将其中的属性值 8080 改为为 80 ,最后再 Ctrl + s 保存一下。就可以了。如下图所示:
    在这里插入图片描述


    Tomcat 的关闭

    当我们打开了Tocmat 服务器,不要使用 差掉右上角的 x ,这是一种错误的关闭方式。

    这种方式是强制中断关闭 Tocmat服务器,可能会导致我们的正在运行的的资源丢失,就相当于你的电脑没电了,强制关机了。不建议使用这种方式

    在这里插入图片描述

    1. 建议使用:正常关闭 可以在 Tomcat 黑窗口中,使用快捷键 Ctrl +c 的方式关闭
    2. 或者点击 在 同样启动 Tomcat 中bin 目录中,找到名为 shutdown.bat的文件,点击它,也可以达到,正常关闭的效果。如下图所示:

    在这里插入图片描述


    1. 使用Dos 命令的方式关闭 Tomcat,这需要单独配置 Tomcat 的环境变量。

    具体操作,请继续往下看。谢谢

    Tomcat 命令的方式启动

    我们想通过 Dos命令的方式启动和关闭 Tomcat 服务器,和Java一样需要配置环境变量,

    这里我们需要配置属于Tomcat 的环境变量。

    首先我们先将其中启动 Tomcat 的文件 startup.bat的源码 分析分析其中的,原理。如下图所示:

    从下图中我们分析startup.bat 文件,得出,我们执行这个程序文件,实际上最后执行的是:同样 bin目录下中的 catalina.bat 文件。

    在这里插入图片描述

    在这里插入图片描述

    我们打开catalina.bat文件进行分析,如下图所示:

    catalina.bat 文件中有这样一行配置: MAINCLASS=org.apache.catalina.startup.Bootstrap (这个类就是 Java当中 main 方法所在的类库。)

    在这里插入图片描述

    我们再通过下载到 Tomcat 的源码,找到了该配置MAINCLASS=org.apache.catalina.startup.Bootstrap下的类:这个类就是 Java当中 main 方法所在的类库 。如下图所示:

    在这里插入图片描述

    在这里插入图片描述

    Tomcat服务器就是Java语言编写的,既然是Java语言编写的,那么启动Tomcat服务器就是需要执行main方法才行


    使用Dos 命令窗口,启动 Tomcat , 从上述分析上看,其中需要一个环境变量名为 CATALINA_HOME 的变量名,以及一个 JAVA_HOME 变量名:其中这个JAVA_HOME 我们配置好了就是 JDK的根目录。

    而我们这里的CATALINA_HOME 也其实就是 Tomcat 服务器的根(注意填写自己安装 Tomcat的根目录),如下操作配置

    CATALINA_HOME 
    
    • 1

    在这里插入图片描述

    在这里插入图片描述


    再配置 Path 用于使用Dos 命令的方式,输入startup启动Tomcat服务,shutdown关闭服务, 让系统根据配置好的变量值,找到对应的启动和关闭Tomcat服务器的文件并执行。配置如下

    Path = %CATALINA_HOME%\bin
    
    • 1

    在这里插入图片描述

    就可以通过Dos 命令的方式启动和关闭 Tomcat 服务器了。

    这里我们需要哪个注意的一点就是 关闭Tomcat: shutdown 文件名的命令,和 Windows中的关机命令冲突了。所以修改一下,防止被,执行过程中,将电脑关机了。这里我们将其重命名为 stop.bat即可 ,如下图所示:

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述


    总结使用Dos 命令启动和关闭Tomcat 需要哪些环境变量的配置 ???

    JAVA_HOME = JDK的根目录

    CATALINA_HOME= Tomcat服务器的根

    Path = %JAVA_HOME%\bin

    Path = %CATALINA_HOME%\bin


    最后:

    限于自身水平,其中存在的错误,希望大家给予指教,韩信点兵——多多益善,谢谢大家,后会有期,江湖再见 !!!


    在这里插入图片描述

  • 相关阅读:
    【reverse】buu-CrackRTF——提取PE中的resource、rtf的固定文件头
    数据结构OJ题
    在PyCharm中添加anaconda环境
    Mysql进阶【3】论述Mysql优化
    《JavaEE》HTTPS
    JavaScript 以追加的方式写入xlsx
    Nodejs系列之系统模块path
    ROS录制并使用数据集(bag)代码命令合集(欢迎补充)
    【Java】this、super关键字,代码块介绍
    科技的成就(三十二)
  • 原文地址:https://blog.csdn.net/weixin_61635597/article/details/126817755