文章目录

Tomcat

Tomcat 简介

Tomcat 是由 Apache 开发的一个 Servlet 容器,实现了对 Servlet 和 JSP 的支持,并提供了作为 Web 服务器的一些特有功能,如 Tomcat 管理和控制平台、安全域管理和 Tomcat 阀等。

由于 Tomcat 本身也内含了一个 HTTP 服务器,它也可以被视作一个单独的 Web 服务器。但是,不能将 Tomcat 和 Apache HTTP 服务器混淆,Apache HTTP 服务器是一个用 C 语言实现的 HTTP Web 服务器;这两个 HTTP web server 不是捆绑在一起的。Tomcat 包含了一个配置管理工具,也可以通过编辑 XML 格式的配置文件来进行配置。

Tomcat 下载

**官网地址:**https://tomcat.apache.org/download-80.cgi

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2Hc9GDrN-1642060378304)(http://47.107.171.232/easily-j/images/20190116/a6a31c9d-92e1-4afc-a813-ef3e4284aa85.png)]](http://47.107.171.232/easily-j/images/20190116/20fc0f46-d93b-45fe-87a7-1d48843e3b02.png)

找到页面下方的 64 位 Windows,32 位的电脑就选 32 位的就可以了。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MU8laFIo-1642060378309)(http://47.107.171.232/easily-j/images/20190116/517c0680-9278-4eac-9f30-3232a00ae72c.png)]

Tomcat 目录结构

目录名称

目录作用

bin

存放 Windows 或 Linux 平台上启动和关闭 Tomcat 的脚本文件

conf

存放 Tomcat 服务器的各种全局配置文件,其中最重要的是 server.xml 和 web.xml

lib

存放 Tomcat 运行需要的库文件

logs

存放 Tomcat 执行时的日志文件

webapps

Tomcat 的主要 Web 发布目录

work

存放 jsp 编译后产生的 class 文件

temp

临时目录

Tomcat 安装

下载完成之后解压即可,尽量不要安装在中文目录下,然后找到 bin 目录下的startup.bat。启动成功如下:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-sbrBX7pD-1642060378313)(http://47.107.171.232/easily-j/images/20190116/2e328e67-75c9-4ec5-9378-a9f54cd98711.png)]

启动端口为 8080,启动耗时为 2464 毫秒,然后浏览器访问 localhost:8080 ,测试是否安转成功。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pvEcWZGS-1642060378315)(http://47.107.171.232/easily-j/images/20190116/0af0355c-d04f-4c12-a034-218524631ff4.png)]

Tomcat 端口被占用

端口被占用是开发中非常常见的一种错误,当第一个使用 8080 端口的程序没有关闭时,又运行了一次 tomcat 同样是使用 8080 端口,则报错 tomcat 端口已经被使用。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3nay8mvP-1642060378317)(http://47.107.171.232/easily-j/images/20190116/25ef6277-be1b-445a-8bee-df766a42487f.png)]

任何一个程序运行都需要使用端口,当端口已经被使用时,启动报错。下面是解决方法,修改端口即可。

Tomcat 修改端口

首先我们把下载的 tomcat 再复制一个,这样测试两个 tomcat 的启动。

找到第二个 tomcat 的 conf/server.xml 配置文件,修改以下内容:

8005 修改为 8006

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OqfbZJxm-1642060378319)(http://47.107.171.232/easily-j/images/20190116/3cd351a9-7e27-46ad-9e6a-a75d0ed5f808.png)]

8080 修改为 8081

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Ygl3wf8X-1642060378320)(http://47.107.171.232/easily-j/images/20190116/7b2928b1-1202-474e-8bf8-3bd0b3bd4bc0.png)]

8009 修改为 8010

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-AOaburzE-1642060378322)(http://47.107.171.232/easily-j/images/20190116/0859f4c5-eaac-438b-87c6-dfc3ba76a766.png)]

浏览器测试

8080 端口的 tomcat:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5qRg2LG3-1642060378324)(http://47.107.171.232/easily-j/images/20190116/edafa38a-f203-4ca3-b631-ec3916a99cc5.png)]

8081 口的 tomcat:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1uqRJj6A-1642060378326)(http://47.107.171.232/easily-j/images/20190116/8571d602-1f71-4129-9679-979b8b62111c.png)]

Tomcat 修改编码

tomcat8 以后默认编码格式是 utf-8;7 之前的都是 iso8859-1,如果默认情况下,tomcat 使用的的编码方式:iso8859-1,修改 tomcat 下的 conf/server.xml 文件。找到如下代码:

<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />

这段代码规定了 Tomcat 监听 HTTP 请求的端口号等信息。

可以在这里添加一个属性:URIEncoding,将该属性值设置为 UTF-8,即可让 Tomcat(默认 ISO-8859-1 编码)以 UTF-8 的编码处理 get 请求。

修改完成后:

<Connector port="8080"  protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8" />

微信公众号

【Java Web】2、Tomcat_java