Spring Boot 项目发布到 Tomcat 服务器的操作步骤
作者:mrr 时间:2023-10-28 09:39:05
第 1 步:将这个 Spring Boot 项目的打包方式设置为 war。
<packaging>war</packaging>
SpringBoot 默认有内嵌的 tomcat 模块,因此,我们要把这一部分排除掉。
即:我们在 spring-boot-starter-web 里面排除了 spring-boot-starter-tomcat ,但是我们为了在本机测试方便,我们还要引入它,所以我们这样写:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<exclusions>
<exclusion>
<artifactId>log4j-over-slf4j</artifactId>
<groupId>org.slf4j</groupId>
</exclusion>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
第 2 步:提供一个 SpringBootServletInitializer 子类,并覆盖它的 configure 方法。
我们可以把应用的主类改为继承 SpringBootServletInitializer。或者另外写一个类。
@SpringBootApplication
public class Application extends SpringBootServletInitializer {
/**
* 如果要发布到自己的Tomcat中的时候,需要继承SpringBootServletInitializer类,并且增加如下的configure方法。
* 如果不发布到自己的Tomcat中的时候,就无需上述的步骤
*/
@Override
protected SpringApplicationBuilder configure(
SpringApplicationBuilder application) {
return application.sources(Application.class);
}
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
第3步:测试
使用内嵌的Tomcat测试:
进入项目的根目录,输入mvn spring-boot:run,开启项目。
在浏览器中输入
http://localhost:8080/stumybatis/likename?name=m
结果如下:
[{"id":1,"name":"tom","sumScore":null,"avgScore":null,"age":25}]
使用发布到自己的Tomcat测试:
先进入项目根目录,执行 mvn package ,将项目打包为war包。
然后将target 目录中的SpringBootTest-0.0.1-SNAPSHOT.war文件复制到你所安装的tomcat目录中webapps目录中。然后去掉工程后边的后缀。
然后开启Tomcat,并在浏览器中输入:http://localhost:8088/SpringBootTest/stumybatis/likename?name=m(我的tomcat的端口修改为了8088)
结果如下:
[{"id":1,"name":"tom","sumScore":null,"avgScore":null,"age":25}]
以上所述是小编给大家介绍的Spring Boot 项目发布到 Tomcat 服务器的操作步骤,希望对大家有所帮助.
标签:spring,boot,tomcat
0
投稿
猜你喜欢
Java详细分析LCN框架分布式事务
2022-10-17 15:49:08
c# 实现IComparable、IComparer接口、Comparer类的详解
2022-07-23 00:25:56
C++ 多线程之互斥量(mutex)详解
2023-12-20 18:51:32
C#编程中使用设计模式中的原型模式的实例讲解
2023-07-18 07:47:10
Java多线程之ThreadLocal原理总结
2023-11-02 22:58:36
Android中WebView图片实现自适应的方法
2021-11-15 06:37:32
Java中final变量使用总结
2022-09-29 08:32:00
Android编程之分辨率处理相关代码段合集
2022-09-28 07:03:16
MyBatis查询结果resultType返回值类型的说明
2021-10-25 21:37:39
Android实现购物车功能
2022-08-14 19:06:55
java实现实时通信聊天程序
2023-10-18 09:08:06
Java规则引擎Easy Rules的使用介绍
2023-05-04 01:42:57
详解怎么用Java的super关键字
2021-10-06 08:11:14
Kotlin标准函数与静态方法应用详解
2022-01-21 10:45:33
springboot如何读取配置文件到静态工具类
2023-11-28 04:44:54
WindowsForm实现TextBox占位符Placeholder提示功能
2023-03-18 12:57:44
详解Java中LinkedHashMap
2022-05-23 16:24:45
Android实现列表数据按名称排序、中英文混合排序
2022-10-18 15:15:57
SpringBoot中属性赋值操作的实现
2022-05-04 18:10:30
Google Kaptcha 框架实现登录验证码功能(SSM 和 SpringBoot)
2023-01-14 09:21:38