概述

在开发项目的过程中,我们常会使用tomcat作为服务器,接下来介绍一下使用tomcat的两种方式!

方式1:即常见的通过部署本地tomcat的方式来启动项目

步骤如下:

1.本地安装tomcat,并配置好环境变量。可参考其他人的博客

2.进入Run/Debug Configurations窗口界面,点击+

tomact启动java项目 怎么用tomcat启动项目_spring


3.选择Tomcat Server -> Local

tomact启动java项目 怎么用tomcat启动项目_tomact启动java项目_02


4.按下图所示配置

tomact启动java项目 怎么用tomcat启动项目_java_03


5.然后再配置deployment项

tomact启动java项目 怎么用tomcat启动项目_tomact启动java项目_04


5.配置时,选择非exploded版,配置好后,下方会带有包名相应的额外路径。

tomact启动java项目 怎么用tomcat启动项目_tomcat_05


部署本地tomcat一定要注意启动路径的设定:

如果不想要该路径,直接删除保留/即可,千万不要只跑去Server选项下将URL改为如下情况,而Deployment下的路径却没有改,这样项目会一直启动失败的!

tomact启动java项目 怎么用tomcat启动项目_tomcat_06


改为了:

tomact启动java项目 怎么用tomcat启动项目_spring_07


但是Deployment下的路径却没有改:

tomact启动java项目 怎么用tomcat启动项目_spring_08


正确的路径对应方式应该是:

Server选项窗下的url为http://localhost:8080/web_war对应Deployment选项窗下的Application Context为/web_war

方式2:本地不部署Tomcat,而是通过添加maven依赖导入Tomcat,也就是嵌入式Tomcat(embed tomcat)

下图为通过maven依赖的方式导入Tomcat:

tomact启动java项目 怎么用tomcat启动项目_java_09


但是embded tomcat相比于Tomcat,功能上有些许删减,也就是有些功能不支持,所以如果embed tomcat启动项目不成功或报错的话,不妨使用本地tomcat来启动,或许可以解决问题!

关于嵌入式Tomcat的依赖可以去搜一下:embded tomcat

<!-- https://mvnrepository.com/artifact/org.apache.tomcat/tomcat-catalina -->
<dependency>
    <groupId>org.apache.tomcat</groupId>
    <artifactId>tomcat-catalina</artifactId>
    <version>9.0.20</version>
</dependency>

通过SpringBoot的starter依赖也可以导入嵌入式tomcat,从而不用配置本地tomcat就可以直接运行项目,SpringBoot的starter依赖为:

<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-web</artifactId>
</dependency>

<!--spring-boot-starter-web中存在这样一条依赖,就是配置关于embded tomcat的-->
<!--所以,如果需要在项目中单独添加embded tomcat,直接添加下述依赖即可-->
<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-tomcat</artifactId>
</dependency>