Tomcat的安装与使用

一、Tomcat的概念

Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器, 在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。

决窍是,当配置正确时,Apache 为HTML页面服务,而Tomcat 实际上运行JSP 页面和Servlet。

由于 Tomcat 是由 Java 语言实现的,因此需要运行在 Java 虚拟机上,所以使用前要先安装 JDK,以提供运行环境

二、Tomcat的下载与安装

2.1windows系统下载安装Tomcat

Tomcat的官网: https://tomcat.apache.org/

在这里插入图片描述
注意: 路径上,不要有中文、空格、特殊字符

打开 Tomcat 文件夹,进入 bin 目录,双击 startup.bat 就可以运行 Tomcat 服务器

在这里插入图片描述

注意: 由于 CMD 默认的编码方式是 GBK,而 Tomcat 的默认编码方式是 UTF-8,因此在双击 startup.bat 启动 Tomcat 时,CMD 上显示的会是乱码。但该问题可以不处理,因为并不需要通过 CMD 来查看 Tomcat 的启动状况及其它情况,可以使用其它方式。

2.2Linux系统下载安装Tomcat

首先切换到 opt 目录(opt 是给主机额外安装软件(安装包)所存放的目录)

cd /opt

通过 wget 方式来下载 Tomcat 的安装包

wget https://mirrors.cnnic.cn/apache/tomcat/tomcat-8/v8.5.73/bin/apache-tomcat-8.5.73.tar.gz

将下载的 Tomcat 压缩包进行解压

tar xzf apache-tomcat-8.5.73.tar.gz

之后通过 startup.sh 运行 Tomcat 服务器

/opt/apache-tomcat-8.5.73/bin/startup.sh

2.3测试Tomcat

Tomcat 的默认端口号为 8080(可以在 conf 目录中server.xml手动修改)

在这里插入图片描述

2.4Tomcat目录结构

  • bin: 存放各种启动、关闭和其它程序的脚本(.sh 文件是针对 Unix 系统使用的,.bat 文件是针对 Windows 系统使用的,* 相同的程序的功能是一样的)

  • conf: 配置文件及相关数据文件存放的目录,如存放 server.xml、tomcat-users.xml、web.xml

  • lib: Tomcat 使用的库文件存放的目录,如存放 Servlet 规范的 API

  • logs: 默认日志文件存放的目录,如存放访问日志(可以通过 server.xml 文件将日志配置到其它目录)

  • temp: 临时文件的工作目录,如上传大文件时的缓存数据会存储在这里

  • webapps: 存放 web 应用、用来程序部署的目录(可以通过 server.xml 文件配置)

  • work: Tomcat 的工作目录,如存放 JSP 编译后的类文件

2.5Web应用部署目录结构

部署应用程序时,一般会将其打包成一个 war 包,然后放到 Tomcat 的应用程序部署目录 webapps 中。

  • /: 表示 web 应用程序的根目录,可以存放 HTML、JSP 页面以及其他客户端浏览器必须可见的其他文件(如 JS、CSS、图像文件)。在较大的应用程序中,还可以选择将这些文件划分为子目录层次结构
  • /WEB-INF: 表示 web 应用程序的所有私有资源目录,用户浏览器不可能访问到的,通常 web.xml context.xml 均放置于此目录。
  • /WEB-INF/web.xml: 表示 web 应用程序的私有的部署描述符,描述组成应用程序的 servlet 和其他组件(如 filter),以及相关初始化参数和容器管理的安全性约束。
  • /WEB-INF/classes: 表示 web 应用程序自有的 Java 程序类文件及相关资源存放目录。
  • /WEB-INF/lib: 表示 web 应用程序自有的 JAR 文件,其中包含应用程序所需的 Java 类文件及相关资源(如第三方类库或 JDBC 驱动程序)

三、配置Tomcat的环境变量

我的电脑->属性->高级->环境变量->新建系统变量

CATALINA_HOME
E:\tomcat\apache-tomcat-8.5.56

在这里插入图片描述

然后系统变量选择Path,新建变量:%CATALINA_HOME%\bin

在这里插入图片描述

测试:

按 win 加 r 键输入cmd 再输入 startup,成功如下:

在这里插入图片描述

此时访问 http://localhost:8080/ 会出现Tomcat默认页面

四、IDEA配置启动Tomcat的web项目

4.1新建一个java项目

4.2Edit Configurations

打开Edit Configurations,添加Tomcat服务器(local)

在这里插入图片描述

编辑Tomcat服务器(Local)

在这里插入图片描述

右击项目,添加框架支持

在这里插入图片描述

勾选好 web应用程序 点击确定

在这里插入图片描述

此时可以点击 file —>Project Structure 可以看到模块的 web配置 注意这个路径的指向

在这里插入图片描述

添加完web应用程序后 IDEA会自动帮我们添加一个Artifacts ,没有创建的话,自己点击加号创建web应用程序-基于模块。

在这里插入图片描述

然后,点击Edit Configurations,选择deployment,添加Artifacts

在这里插入图片描述

设置application context 为 / ,点击Apply,ok完成。

在这里插入图片描述

4.3启动Tomcat,测试

如图表示成功

在这里插入图片描述

五、Tomcat问题

5.1启动Tomcat占用内存过大

解决方案:打开Edit Configuration ,通过修改VM options ,如下:

VM options :
-server
-Xms128m
-Xmx256m
-XX:NewSize=128m
-XX:MaxNewSize=128m
-XX:PermSize=128m
-XX:MaxPermSize=128m

在这里插入图片描述

参数说明:

参数说明
-Xms768m设置JVM初始堆内存为768m。此值可以设置与-Xmx相同,以避免每次垃圾回收完成后JVM重新分配内存。
-Xmx768m设置JVM最大堆内存为768m。
-Xss128k设置每个线程的栈大小。JDK5.0以后每个线程栈大小为1M,之前每个线程栈大小为256K。应当根据应用的线程所需内存大小进行调整。在相同物理内存下,减小这个值能生成更多的线程。但是操作系统对一个进程内的线程数还是有限制的,不能无限生成,经验值在3000~5000左右。需要注意的是:当这个值被设置的较大(例如>2MB)时将会在很大程度上降低系统的性能。
-Xmn2g设置年轻代大小为2G。在整个堆内存大小确定的情况下,增大年轻代将会减小年老代,反之亦然。此值关系到JVM垃圾回收,对系统性能影响较大,官方推荐配置为整个堆大小的3/8。
-XX:NewSize=1024m设置年轻代初始值为1024M。
-XX:MaxNewSize=1024m设置年轻代最大值为1024M。
-XX:PermSize=256m设置持久代初始值为256M。
-XX:MaxPermSize=256m设置持久代最大值为256M。
-XX:NewRatio=4设置年轻代(包括1个Eden和2个Survivor区)与年老代的比值。表示年轻代比年老代为1:4。
-XX:SurvivorRatio=4设置年轻代中Eden区与Survivor区的比值。表示2个Survivor区(JVM堆内存年轻代中默认有2个大小相等的Survivor区)与1个Eden区的比值为2:4,即1个Survivor区占整个年轻代大小的1/6。
-XX:MaxTenuringThreshold=7表示一个对象如果在Survivor区(救助空间)移动了7次还没有被垃圾回收就进入年老代。如果设置为0的话,则年轻代对象不经过Survivor区,直接进入年老代,对于需要大量常驻内存的应用,这样做可以提高效率。如果将此值设置为一个较大值,则年轻代对象会在Survivor区进行多次复制,这样可以增加对象在年轻代存活时间,增加对象在年轻代被垃圾回收的概率,减少Full GC的频率,这样做可以在某种程度上提高服务稳定性。
-client设置JVM使用Client模式,特点是启动速度比较快,但运行时性能和内存管理效率不高,通常用于客户端应用程序或开发调试;在32位环境下直接运行Java程序默认启用该模式。
-server设置JVM使Server模式,特点是启动速度比较慢,但运行时性能和内存管理效率很高,适用于生产环境。在具有64位能力的JDK环境下默认启用该模式。
非标准参数(-X)默认JVM实现这些参数的功能,但是并不保证所有JVM实现都满足,且不保证向后兼容;
非稳定参数(-XX)此类参数各个JVM实现会有所不同,将来可能会不被支持,需要慎重使用;

六、问题

6.1webapp文件没有小蓝点

idea打开【File】->【Project Settings】 -> 【Modules】-> 添加web
在这里插入图片描述
【Project Settings】 -> 【+】-> 添加
在这里插入图片描述
然后:
在这里插入图片描述

6.2另一种方式启动Tomcat

settings安装Maven Helper插件:
在这里插入图片描述
Edit Configurations编辑Maven配置启动Tomcat。

  • 5
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值