Apache Tomcat安装、运行

介绍

Apache Tomcat是下面多个规范的一个开源实现:Jakarta Servlet、Jakarta Server Pages、Jakarta Expression Language、Jakarta WebSocket、Jakarta Annotations 和 Jakarta Authentication。这些规范是 Jakarta EE 平台的一部分。
Jakarta EE 平台是Java EE平台的演化。Tomcat 10和以后版本实现的规范是 Jakarta EE 的一部分,Tomcat 9及以前版本实现的规范是Java EE的一部分。

Apache Tomcat官网

https://tomcat.apache.org/
在这里插入图片描述

Tomcat版本选择

https://tomcat.apache.org/whichversion.html
在这里插入图片描述

版本下载、安装

例如,要在win7下安装64位的10.1.13版本:
在这里插入图片描述
下载到本地的压缩包apache-tomcat-10.1.13-windows-x64.zip。解压到某个目录下,例如D盘,不用安装。

目录结构

解压后的目录结构:
在这里插入图片描述
运行Tomcat前,建议先通读下该目录下面的RUNNING.txt。

bin子目录下面存放启动、停止和其它的脚本:
在这里插入图片描述

conf子目录下存放配置和相关的DTD文件,其中最重要的文件是server.xml,它是容器的主要配置文件:
在这里插入图片描述
lib子目录下存放库文件:
在这里插入图片描述
logs子目录是默认存放日志的目录:
在这里插入图片描述

webapps子目录是存放web应用的目录:
在这里插入图片描述

work子目录是临时工作目录。
temp子目录是Java虚拟机用来存放临时文件的目录。

对JRE版本的要求

对于Tomcat 10.1.x版本,需要JRE 11或以后版本。

设置环境变量

CATALINA_HOME(必须)

CATALINA_HOME环境变量是必须的,设置为Tomcat二进制发布包的根路径,例如D:\apache-tomcat-10.1.13:
在这里插入图片描述
在这里插入图片描述

CATALINA_BASE(可选)

CATALINA_BASE环境变量是可选的,默认等于CATALINA_HOME。如果想在一台机器上运行多个Tomcat实例,可以配置CATALINA_BASE环境变量。使用CATALINA_BASE环境变量有如下好处:

  • 更加方便管理Tomcat版本的升级。使用同一个CATALINA_HOME环境变量的多个Tomcat实例可以可以共享一套.jar文件和二进制文件,针对这些文件的升级,对所有Tomcat实例都生效。
  • 避免相同的静态.jar文件的重复。
  • 可能共享某些设置,例如setenv脚本、或者bat脚本。

JRE_HOME 或者JAVA_HOME(必须)

设置启动Tomcat需要的Java运行时环境或者JDK的位置,这个是必须设置的。其中JRE_HOME设置Java运行时环境,JAVA_HOME设置JDK的位置。
如果同时设置了JRE_HOME 和 JAVA_HOME,Tomcat会使用JRE_HOME。

例如设置JAVA_HOME:
在这里插入图片描述
在这里插入图片描述

其它环境变量(可选)

除了上面介绍的几个环境变量,其它可选的环境变量可以查看catalina.bat或者catalina.sh文件上面的注释部分。
在这里插入图片描述
在这里插入图片描述

启动Tomcat

说明

默认使用8080端口来启动,这个端口是在server.xml文件中配置的:
在这里插入图片描述

在windows下,可以通过下面的一种方式来启动Tomcat:

  • %CATALINA_HOME%\bin\startup.bat
  • 或者 %CATALINA_HOME%\bin\catalina.bat start

在*nix下,可以通过下面的一种方式来启动Tomcat:

  • $CATALINA_HOME/bin/startup.sh
  • 或者$CATALINA_HOME/bin/catalina.sh start

举例:用startup.bat启动Tomcat

在这里插入图片描述
在这里插入图片描述

启动后,访问http://localhost:8080/可以访问Tomcat的默认应用:
在这里插入图片描述

举例:用catalina.bat start启动Tomcat

在这里插入图片描述
在这里插入图片描述

停止Tomcat

说明

在windows下,可以通过下面的方式之一来停止Tomcat:

  • %CATALINA_HOME%\bin\shutdown.bat
  • 或者%CATALINA_HOME%\bin\catalina.bat stop

在*nix下,可以通过下面的一种方式来停止Tomcat:

  • $CATALINA_HOME/bin/shutdown.sh
  • 或者$CATALINA_HOME/bin/catalina.sh stop

举例:用shutdown.bat停止Tomcat:

在这里插入图片描述

举例:用catalina.bat stop停止Tomcat:

在这里插入图片描述

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

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

相关文章

C/C++ 进程间通信system V IPC对象超详细讲解(系统性学习day9)

目录 前言 一、system V IPC对象图解 1.流程图解: ​编辑 2.查看linux内核中的ipc对象: 二、消息队列 1.消息队列的原理 2.消息队列相关的API 2.1 获取或创建消息队列(msgget) 实例代码如下: 2.2 发送消息到消…

day25--JS进阶(递归函数,深浅拷贝,异常处理,改变this指向,防抖及节流)

目录 浅拷贝 1.拷贝对象①Object.assgin() ②展开运算符newObj {...obj}拷贝对象 2.拷贝数组 ①Array.prototype.concat() ② newArr [...arr] 深拷贝 1.通过递归实现深拷贝 2.lodash/cloneDeep实现 3.通过JSON.stringify()实现 异常处理 throw抛异常 try/catch捕获…

v-bind绑定

一、标签属性动态绑定 方式一: v-bind:属性名"data声明的变量名" 方式二:(简写) 将v-bind省略,直接 :属性名"data声明的变量" v-bind.属性名[.修饰符]"变量名、计算属性。。 对应还提供了修饰…

宠物社区风格 商业版(GBK)Discuz模板

仿爱宠乐园宠物社区风格Discuz模板,商业版(GBK)Discuz模板。 1、版本支持:discuzx3.0版本,discuzx3.1版本,discuzx3.2版本,discuzx3.3版本,discuzx3.4版本。包括网站首页&#xff0…

1.6 计算机网络的性能

思维导图: 1.6.1 计算机网络的性能指标 前言: 我的理解: 这段前言主要介绍了关于计算机网络性能的两个方面的讨论。首先,计算机网络的性能可以通过一些重要的性能指标来衡量。但除了这些指标之外,还有一些非性能特征…

李沐深度学习记录4:12.权重衰减/L2正则化

权重衰减从零开始实现 #高维线性回归 %matplotlib inline import torch from torch import nn from d2l import torch as d2l#整个流程是,1.生成标准数据集,包括训练数据和测试数据 # 2.定义线性模型训练 # 模型初始化(函…

接口测试及常用接口测试工具

首先,什么是接口呢? 接口一般来说有两种,一种是程序内部的接口,一种是系统对外的接口。 系统对外的接口:比如你要从别的网站或服务器上获取资源或信息,别人肯定不会把数据库共享给你,他只能给你…

【研究的艺术】通读《The Craft of Research》

通读《The Craft of Research》 前言1. 跟读者建立联系2. 明白问题的重要性3. 组织论述4. 论点4.1 Making Claims4.2 Assembling Reasons and Evidence4.3 Acknowledgments and Responses4.4 Warrants 未完待续。。。 前言 本篇博客是《The Craft of Research》的通读笔记&…

论文研读|Protecting Intellectual Property of Deep Neural Networks with Watermarking

目录 论文信息文章简介研究动机研究方法水印生成水印嵌入版权验证 实验结果有效性(Effectiveness)高效性(Converge Speed)保真度(Functionality)鲁棒性(Robustness)Anti-剪枝攻击&am…

【数据结构】迷宫问题DFS非递归(c语言实现)

本来之前写过一个推箱子,就想着写个迷宫游戏,因为想着推箱子游戏里面也有墙,也有玩家的移动,比推箱子简单的是还不用判断前面是否有箱子的情况,但是自己写的迷宫游戏如果自己随机生成的迷宫地图的话,不一定…

Uniapp 新手专用 抖音登录 获取用户头像、名称、openid、unionid、anonymous_openid、session_key

TC-dylogin 一定请选择 源码授权版 教程 第一步 将代码拷贝至您所需要的页面 该代码位置:pages/index.vue 第二步 修改appid和secret 第三步 获取appid和secret 获取appid和secret链接 注意事项 为了安全,我将默认的自己的appid和secret在云函数中删…

RPC分布式网络通信框架项目

文章目录 对比单机聊天服务器、集群聊天服务器以及分布式聊天服务器RPC通信原理使用Protobuf做数据的序列化,相比较于json,有哪些优点?环境配置使用项目代码工程目录vscode远程开发Linux项目muduo网络库编程示例CMake构建项目集成编译环境Lin…