1. Tomcat安装*
- 官网下载8.5.x版本:https://tomcat.apache.org/download-80.cgi
- 点击Binary Distributions-->Core下的(Win:zip或64-bit Windows zip)或(Linux:tar.gz)可下载二进制发行版
- 点击Source Code Distributions下的zip可下载源码
- 安装:解压下载好的二进制发行版压缩包到一个没有中文和空格的路径下
- 卸载:删除解压目录
- 启动:双击Tomcat安装目录下的bin目录下的startup.bat,浏览器访问http://localhost:8080/测试是否启动成功
- 关闭:
- 正常关闭:bin/shutdown.bat,在startup.bat启动窗口中ctrl+c
- 强制关闭:关闭startup.bat启动窗口
-
常见启动问题:
黑窗口一闪而过:没有正确配置JAVA_HOME环境变量
-
端口号冲突:
1. 暴力解决:找到占用的端口号并且找到对应的进程,杀死该进程 netstat -ano 2. 温柔解决:修改conf/server.xml <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" /> 修改port和redirectPort 一般会将tomcat的默认端口号修改为80,这样在访问时就不用输入端口号了
-
启动时控制台中文乱码(8.5.x版本中8.5.35以后有控制台乱码):
编辑TOMCAT_HOME/conf/logging.properties文件: 在java.util.logging.ConsoleHandler.encoding = UTF-8下面添加: java.util.logging.ConsoleHandler.encoding = GBK 或直接将其修改为GBK
2. Tomcat目录结构
- bin:脚本目录
- 启动脚本:startup.bat
- 关闭脚本:shutdown.bat
- conf:配置文件目录
- 核心配置文件:server.xml
- 用户权限配置文件:tomcat-users.xml
- Tomcat全局配置文件:web.xml
- lib:依赖库,tomcat和web项目中需要使用的jar包
- logs:日志目录
- 用户访问信息:localhost_access_log.日期.txt
- temp:临时文件目录
- webapps:WEB项目所存放的默认根目录
- work:tomcat处理JSP页面的工作目录
- CATALINA_BASE是Tomcat的工作目录
- CATALINA_HOME是Tomcat的安装目录
- CATALINA_TMPDIR是web应用运行过程中使用的临时目录
3. Tomcat部署项目
-
方式1:直接将项目放到webapps目录下
- 访问项目:localhost:8080/项目路径
- 简化部署:将项目打成一个war包,再将war包放置到webapps目录下,war包会自动解压缩
-
方式2:配置conf/server.xml文件
在<Host>标签体中添加: <Context docBase="" path="" /> docBase:项目存放的路径 path:虚拟目录
-
方式3*:在conf\Catalina\localhost创建一个xml文件,然后在xml文件中编写
<Context docBase="" /> docBase:项目存放的路径 虚拟目录:xml文件的名称
4. Tomcat集成到IDEA*
- 创建Java模块-->右键该模块-->Add Framework Support...-->选中Web Application-->默认勾选Create web.xml
- 在WEB-INF下创建目录lib
- 导航栏-->Run-->Edit Configurations-->Templates-->Tomcat Server-->Local或Remote
- 最上面的蓝色Create configuration-->Application server后面的Configure-->Tomcat Home(E:\Develop\Tomcat\apache-tomcat-8.5.35)
- 在Tomcat Server配置页面-->Deployment-->点击加号-->选择Artifact...-->Application context表示浏览器访问的URL,建议与模块名相同
- 在Tomcat Server配置页面-->Server-->On 'Update' action(Redeploy)-->On frame deactivation(Update resources)-->OK
- 更改web项目发布路径:File-->Project Structure...-->Artifacts-->Output directory更改为webapps\模块名称
5. IDEA项目目录
模块名称
|--src
|--web 存放web资源
|--WEB-INF 存放项目的配置信息,不能被浏览器直接访问
|--lib 存放当前WEB项目所需要的第三方的jar包
|--web.xml 当前WEB项目的核心配置
|--index.jsp
|--web资源
6. webapps目录
|--项目1 对应IDEA的模块名称(要配好web项目发布路径)
|--WEB-INF 同IDEA
|--classes 存放src下Java源码编译后生成class文件
|--lib 同IDEA
|--web.xml 同IDEA
|--index.jsp
|--web资源
|--项目2