Tomcat 安装配置
Tomcat 官方站点:Apache Tomcat® - Welcome! 。
安装
-
得到下载的安装包(一般是 zip 文件),并解压到你指定的目录(建议不要解压在 c 盘);(这里以 windows10 系统为例,下载的是 8.0.50 版本);
-
找到 bin 目录下的
startup.bat
文件,双击。出现黑色窗口后不要关闭,不要关闭,不要关闭。此时 Tomcat 已经装载完毕;黑色窗口如下:
-
校验。在浏览器输入 url:
localhost:8080
,若显示了以下图片,则算成功;
安装错误排查
- 双击 startup.bat 文件,出现一个小黑窗口然后就没了,原因是因为没有配置 JAVA_HOME 环境变量。Tomcat 本质是一个 Java 程序,所以要 jdk, 会去根据 JAVA_HOME 使用指定 jdk;
- JAVA_HOME 必须全大写;
- JAVA_HOME 中间必须是下划线;
- JAVA_HOME 配置的路径只需要配置到 jdk 的安装目录即可。不需要带上 bin 目录;
- 端口 8080 被占用
[查看端口cmd指令: netstat -anb, 使用的非常多]
。如果其它服务程序占用了 8080 端口,可以关闭该服务,或者修改 Tomcat 服务的默认配置文件中的端口 8080(通过 Tomcat 目录下的server.xml
文件进行修改);
目录结构
补充:
- conf 目录下的
server.xml
文件主要用于配置 Tomcat 的基本设置;
Tomcat 的运行与停止
这里仅仅只介绍不依靠其他 IDE 的情况下的最原始的运行方法:
- 运行。在 bin 目录下启动控制台,执行命令
catalina run
; - 停止。有两种方案:
- 直接点击运行后出现的黑色窗口的叉号;
- 双击 bin 目录下的
shutdown.bat
;
Web 应用概述
web 应用介绍
- WEB 应用是多个 web 资源的集合。简单的说,可以把 web 应用理解为硬盘上的一个目录,这个目录用于管理多个web资源。
- Web 应用通常也称之为 web 应用程序,或 web 工程,通俗的说就是网站。
- 在 Tomcat 中,若没有额外的 web 应用,并且请求的地址没有工程名的话,会默认调用 webapps 下的 ROOT 应用,也就是我们在安装成功后显示的页面;
web 应用组成
一个 WEB 应用由多个 WEB 资源或其它文件组成,包括 html 文件、css 文件、js 文件、动态 web 页面、java 程序、支持 jar 包、配置文件等。
开发人员在开发 web 应用时,按照规定目录结构存放这些文件。否则,在把 web 应用交给 web 服务器管理时,不仅可能会使 web 应用无法访问,还会导致 web 服务器启动报错。
web 应用/程序/工程目录结构
基本结构
解读:
- 图中的 webapps 下的目录指的是工程目录,一般以工程名字来命名。例如家居项目可以命名为 jiaju;
Web 应用的部署
原生的部署
- 将满足 web 应用目录结构的 war 包或者文件夹放入 webapps 文件夹中。对于 war 包 Tomcat 在运行的时候会自动解压成文件夹形式的项目文件;
- 启动 Tomcat;
- 在浏览器输入
http://ip[域名]:port/项目名/子目录../文件名
即可访问相关资源;
通过配置文件部署
通过配置 server.xml
文件来部署:
在 <Host>...</Host>
标签中配置如下信息:
<context path="/jiaju" docBase="D:\target" />
;-
- 这个配置的意义在于当以/jiaju 的形式请求资源的时候,Tomcat 会默认先访问
"D:\target"
下的 web 应用。也就是说我们的 web 应用可以不用放在 webapps 目录下,为我们自由存放 web 资源提供了支持;
- 这个配置的意义在于当以/jiaju 的形式请求资源的时候,Tomcat 会默认先访问
通过自建 xml 文件部署:
-
进入 Tomcat 安装目录下的
\conf\Catalina\localhost
,创建一个与项目名称一样的文件——项目名.xml
。例如,假如我有一个 web 项目名为“jiaju”:
-
在
jiaju.xml
文件中做如下配置:
<context path="/jiaju" docBase="D:\target" />
。
总结
- 第一种方法比较普通,但是我们需要将编译好的项目重新 copy 到 webapps 目录下,多出了两步操作;
- 第二种方法直接在 server.xml 文件中配置,但是从 tomcat5.0 版本开始后,server.xml 文件作为 tomcat 启动的主要配置文件,一旦 tomcat 启动后,便不会再读取这个文件,因此无法再 tomcat 服务启动后发布 web 项目;
- 第三种方法是最好的,每个项目分开配置,tomcat 将以
\conf\Catalina\localhost
目录下的 xml 文件的文件名作为 web 应用的上下文路径,而不再理会<Context>
中配置的 path 路径,因此在配置的时候,可以不写 path。通常我们使用第三种方法;
IDEA 部署 JavaWeb 应用
这里以 IDEA2020.2 为示例。
新建 JavaWeb 工程
-
先创建一个 java 项目:
-
在新建好的项目上点击右键,点 Add Framework Support:
-
点击导入 Web Application,点击 ok 即可:
配置 TomCat 并启动项目
-
点击右上角的编辑配置;
-
点击+号,找到 Tomcat Server:
-
选择一个本地下载好的 Tomcat:
- Name : 在命名时,建议写与项目名字相关的名字,比如 news_tomcat8 或者 crm_tomcat8;
- 这样,当有多个 web 项目时,就可以明确应当启动哪个 web 项目,不乱;
- 在右边的部署栏 Deployment 中点击+号,添加构建:
- +: 将要部署的 web 工程,加入到 Tomcat 运行实例中;
-
- : 从 Tomcat 实例中,删除不需要的 web 模块
- : 从 Tomcat 实例中,删除不需要的 web 模块
- 修改工程路径,建议改成当前 Web 工程名 (项目名),比如 /news ,/crm 等, 更好区分:
- 可以选择只保留“/”;
- 选择热加载,点击 ok 完成运行环境部署:
- HTTP port 可以指定运行 Tomcat 端口, 不会修改 server.xml, 只是针对当前配置;
- 在 Open browser After launch 可以下拉,选择默认运行的浏览器;
-
运行 Tomcat,访问项目:这里注意要直接选择 Tomcat, 点击运行按钮,而不是在 jsp 页面上右键点击运行,这样会访问不到页面(JSP 不是静态资源):
-
可以看到 tomcat 启动成功后,会自动跳转到浏览器打开页面: