下载
这就不多说了,直接官网下载 https://tomcat.apache.org/
直接解压
配置 环境变量 (提前安装好java,配置好java的环境变量)
配置Tomcat环境变量前一定要配置好java的环境变量,尤其是JAVA_HOME
新建 CATALINA_HOME
环境变量,
变量:CATALINA_HOME
值:D:\DevelopmentTool\apache-tomcat-9.0.43
修改 Path
,
在 Path
后添加(新建 可以不加): %CATALINA_HOME%\lib、%CATALINA_HOME%\bin、%CATALINA_HOME%\lib\servlet-api.jar
tomcat 目录介绍
- bin:可执行文件(启动文件startup.bat、关闭文件shutdown.bat)
- conf:配置文件(修改端口号:server.xml,建议将server.xml备份)
- lib:依赖的jar包
- log:日志文件(记录出错等信息)
- temp:临时文件
- webapps:可执行的项目。默认作为存放开发项目的目录
- work:存放由jsp翻译成的.java源文件,以及编译的.class字节码文件(jsp ->java ->class)
启动乱码问题
问题描述:打开startup.bat
后汉字乱码
解决方法:在.\apache-tomcat-9.0.43\conf
下打开logging.properties
文件
51行左右
将java.util.logging.ConsoleHandler.encoding = UTF-8
替换为java.util.logging.ConsoleHandler.encoding = GBK
端口冲突问题
- 与其他服务的端口号冲突
tomcat端口号默认8080,如果和其他服务的端口号冲突,则可对端口号进行修改
在.\apache-tomcat-9.0.43\conf
下打开server.xml
文件,在文件的69
行左右,将port="8080"
修改为指定的某一端口号,重新启动。
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
简单理解工作原理
1. 客户端发送servlet请求
2. servlet 容器接收到客户端请求,进行解析
3. servlet 容器创建一个ServletRequest对象, 对象内包含了 客户请求信息及其客户相关信息,请求头、请求正文、客户端的ip
4. servlet 容器创建一个servletResponse 对象
5. serverlet 容器调用客户请求的servlet的service()服务方法,并把servletRequest对象和 servletResponse对象作为参数传给该服务方法
6. servelet 从servletRequest对象里面获取客户端请求信息
7. servlet利用servletResponse对象生成响应结果
8. servlet容器把servlet生成的响应结果发送给客户
tomcat 设置
CATALINA_HOME/conf/server.xml