springboot项目如何部署到tomcat中

1、使用springboot内部嵌入的tomcat

可以改一些tomcat的参数

2、可以把springboot项目打包为war包,然后部署到tomcat中去

Spring Boot 默认使用嵌入式 Tomcat 作为其 Web 容器,这使得 Spring Boot 应用可以作为一个独立的 JAR 文件运行。这种嵌入式服务器的方式简化了部署过程,只需要 Java 环境即可运行。

嵌入式 Tomcat 的特点

  • 简化部署:Spring Boot 应用被打包为一个可执行的 JAR 文件,包含嵌入式 Tomcat,无需外部服务器。

  • 快速启动:嵌入式服务器使得应用启动速度更快,适合开发和测试环境。

  • 易于配置 :通过 application.propertiesapplication.yml 文件,可以轻松配置嵌入式 Tomcat 的各种参数。

配置嵌入式 Tomcat

在 Spring Boot 中,你可以通过 application.properties 文件来配置嵌入式 Tomcat 的各种属性。例如,配置服务器端口:

properties复制

复制代码
server.port=8180

还可以配置连接池参数:

properties复制

复制代码
server.tomcat.accept-count=100
server.tomcat.max-connections=10000
server.tomcat.max-threads=200
server.tomcat.min-spare-threads=10

使用外部 Tomcat 部署

虽然 Spring Boot 默认使用嵌入式 Tomcat,但你也可以将 Spring Boot 应用打包为 WAR 文件,并部署到外部的 Tomcat 服务器。这在生产环境中较为常见,因为外部 Tomcat 提供了更多的管理和配置选项。

将 Spring Boot 应用部署到外部 Tomcat

  1. 修改 pom.xml:将项目打包为 WAR 文件,并排除嵌入式 Tomcat:

    xml复制

    复制代码
    <packaging>war</packaging>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-tomcat</artifactId>
        <scope>provided</scope>
    </dependency>
  2. 修改主类 :确保主类继承 SpringBootServletInitializer

    java复制

    复制代码
    @SpringBootApplication
    public class Application extends SpringBootServletInitializer {
        public static void main(String[] args) {
            SpringApplication.run(Application.class, args);
        }
    }
  3. 打包并部署 :使用 Maven 打包项目,然后将生成的 WAR 文件部署到 Tomcat 的 webapps 目录。

总结

Spring Boot 默认使用嵌入式 Tomcat,这使得应用可以作为一个独立的 JAR 文件运行,简化了部署过程。然而,你也可以将 Spring Boot 应用打包为 WAR 文件,并部署到外部的 Tomcat 服务器,这在生产环境中较为常见。

相关推荐
sunshine-sm14 分钟前
CentOS Steam 9安装 MySQL 8
linux·运维·服务器·数据库·mysql·centos·centos stream
dazhong201233 分钟前
Spring Boot 项目新增 Module 完整指南
java·spring boot·后端
xrkhy1 小时前
SpringBoot之日志处理(logback和AOP记录操作日志)
java·spring boot·logback
尚久龙1 小时前
安卓学习 之 用户登录界面的简单实现
android·运维·服务器·学习·手机·android studio·安卓
superlls1 小时前
(设计模式)区分建造者、 规格模式(MyBatis Example+Criteria )
java·tomcat
呆萌小新@渊洁2 小时前
linux升级系统,重启出现Minimal BASH-like line editingis supported
linux·服务器
東雪蓮☆2 小时前
从零开始掌握 Web 与 Nginx:入门详解
运维·服务器·前端·nginx
脑子慢且灵2 小时前
【JavaWeb】一个简单的Web浏览服务程序
java·前端·后端·servlet·tomcat·web·javaee
上官浩仁2 小时前
springboot synchronized 本地锁入门与实战
java·spring boot·spring
m0_748461393 小时前
Spring Boot + Vue 项目中使用 Redis 分布式锁案例
vue.js·spring boot·redis