最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SpringBoot使用外置Tomcat的操作步驟

 更新時間:2026年02月05日 08:24:39   作者:好好研究  
這篇文章主要介紹了Spring Boot如何使用外置Tomcat,包括創(chuàng)建Maven Web項(xiàng)目、修改為Spring Boot項(xiàng)目、配置外部Tomcat和啟動外部Tomcat,需要的朋友可以參考下

SpringBoot默認(rèn)使用嵌入式Servlet容器(內(nèi)置Tomcat)。

應(yīng)用打成可執(zhí)行的jar。

原理:

jar包:執(zhí)行SpringBoot主類的main方法,啟動ioc容器,創(chuàng)建嵌入式的Servlet容器。

war包:啟動服務(wù)器,服務(wù)器啟動SpringBoot應(yīng)用【SpringBootServletInitializer】,啟動ioc容器。

如果SpringBoot想要使用外置Tomcat應(yīng)如何操作呢?下面進(jìn)行外置Tomcat的步驟演示:

第一步:創(chuàng)建Maven Web項(xiàng)目

第二步:將Maven Web項(xiàng)目修改為SpringBoot項(xiàng)目

1. 修改pom.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.5.6</version>
    <relativePath/> <!-- lookup parent from repository -->
  </parent>

  <groupId>com.qcby</groupId>
  <artifactId>springboottomcat</artifactId>
  <version>1.0-SNAPSHOT</version>
  <packaging>war</packaging><!-- 注意這里是war的打包方式 -->

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <maven.compiler.source>8</maven.compiler.source>
    <maven.compiler.target>8</maven.compiler.target>
  </properties>

  <dependencies>
    <!-- Web依賴 -->
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-web</artifactId>
      <!-- 排除內(nèi)置的Tomcat依賴 -->
      <exclusions>
        <exclusion>
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-starter-tomcat</artifactId>
        </exclusion>
      </exclusions>
    </dependency>

    <!-- 將嵌入式的Tomcat指定為provided -->
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring‐boot‐starter‐tomcat</artifactId>
      <scope>provided</scope>
    </dependency>

    <!-- 添加Servlet API依賴(provided表示打包時不包含,由外置容器提供) -->
    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>javax.servlet-api</artifactId>
      <version>4.0.1</version>
      <scope>provided</scope>
    </dependency>
  </dependencies>

  <!-- Spring Boot Maven插件,這是生成可執(zhí)行jar的關(guān)鍵 -->
  <build>
    <plugins>
      <plugin>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-maven-plugin</artifactId>
      </plugin>
    </plugins>
  </build>
</project>

【2. 添加啟動類,適配外置容器】

注意:讓啟動類繼承SpringBootServletInitializer并重寫configure方法(這是外置容器啟動SpringBoot應(yīng)用的入口)

package com.qcby.springBootTomcat;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

@SpringBootApplication
public class springBootTomcat extends SpringBootServletInitializer{
    // 內(nèi)置容器啟動入口(保留不影響,外置容器不會走這個方法)
    public static void main(String[] args) {
        SpringApplication.run(springBootTomcat.class,args);
    }

    // 外置容器啟動入口:重寫configure方法
    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
        return application.sources(springBootTomcat.class);
    }
}

【3. 寫一個測試接口】

@RestController
public class HelloController {
    // 測試接口
    @GetMapping("/hello")
    public String hello() {
        return "Hello, Tomcat!";
    }
}

第三步:配置外部Tomcat

第四步:

啟動外部Tomcat

訪問http://localhost:8080/hello

到次,配置外部Tomcat成功?。?!

到此這篇關(guān)于SpringBoot使用外置Tomcat的操作步驟的文章就介紹到這了,更多相關(guān)SpringBoot外置Tomcat內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 一篇文章徹底搞懂面試中常被問的各種“鎖”

    一篇文章徹底搞懂面試中常被問的各種“鎖”

    這篇文章主要給大家介紹了關(guān)于面試中常被問的各種“鎖”的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05
  • 升級dubbo2.7.4.1版本平滑遷移到注冊中心nacos

    升級dubbo2.7.4.1版本平滑遷移到注冊中心nacos

    這篇文章主要為大家介紹了2.7.4.1的dubbo平滑遷移到注冊中心nacos的兩種版本升級方案,以及為什要升級,有需要的朋友可以借鑒參考下,希望能夠有所幫助
    2022-02-02
  • Spring Boot整合Swagger測試api構(gòu)建全紀(jì)錄

    Spring Boot整合Swagger測試api構(gòu)建全紀(jì)錄

    這篇文章主要給大家介紹了關(guān)于Spring Boot整合Swagger測試api構(gòu)建的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-01-01
  • SpringBoot?整合?EasyExcel?實(shí)現(xiàn)自由導(dǎo)入導(dǎo)出功能

    SpringBoot?整合?EasyExcel?實(shí)現(xiàn)自由導(dǎo)入導(dǎo)出功能

    在實(shí)際的業(yè)務(wù)系統(tǒng)開發(fā)過程中,操作 Excel 實(shí)現(xiàn)數(shù)據(jù)的導(dǎo)入導(dǎo)出基本上是個非常常見的需求,這篇文章主要介紹了SpringBoot?整合?EasyExcel?實(shí)現(xiàn)自由導(dǎo)入導(dǎo)出功能,需要的朋友可以參考下
    2024-06-06
  • 小議Java的源文件的聲明規(guī)則以及編程風(fēng)格

    小議Java的源文件的聲明規(guī)則以及編程風(fēng)格

    這篇文章主要介紹了小議Java的源文件的聲明規(guī)則以及編程風(fēng)格,僅給Java初學(xué)者作一個簡單的示范,需要的朋友可以參考下
    2015-09-09
  • 一文了解MyBatis Plus批量數(shù)據(jù)插入功能

    一文了解MyBatis Plus批量數(shù)據(jù)插入功能

    mybatisPlus底層的新增方法是一條一條的新增的,下面這篇文章主要給大家介紹了MyBatis Plus批量數(shù)據(jù)插入功能的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2021-09-09
  • SpringBoot詳細(xì)講解多個配置文件的配置流程

    SpringBoot詳細(xì)講解多個配置文件的配置流程

    SpringBoot項(xiàng)目是一個標(biāo)準(zhǔn)的Maven項(xiàng)目,它的配置文件需要放在src/main/resources/下,其文件名必須為application,其存在兩種文件形式,分別是properties和yaml(或者yml)文件
    2022-06-06
  • Logback與Log4j2日志框架性能對比與調(diào)優(yōu)方式

    Logback與Log4j2日志框架性能對比與調(diào)優(yōu)方式

    這篇文章主要介紹了Logback與Log4j2日志框架性能對比與調(diào)優(yōu)方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • Java實(shí)戰(zhàn)之用Swing實(shí)現(xiàn)通訊錄管理系統(tǒng)

    Java實(shí)戰(zhàn)之用Swing實(shí)現(xiàn)通訊錄管理系統(tǒng)

    今天給大家?guī)淼氖荍ava實(shí)戰(zhàn)的相關(guān)知識,文章圍繞著Swing實(shí)現(xiàn)通訊錄管理系統(tǒng)展開,文中有非常詳細(xì)的代碼示例,需要的朋友可以參考下
    2021-06-06
  • Java21在spring boot中使用虛擬線程的方法

    Java21在spring boot中使用虛擬線程的方法

    本文給大家介紹Java21在spring boot中使用虛擬線程的方法,結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2025-08-08

最新評論

无棣县| 延寿县| 天津市| 茌平县| 藁城市| 綦江县| 行唐县| 栾城县| 承德县| 义乌市| 察雅县| 临城县| 石楼县| 宁远县| 清远市| 镇远县| 达孜县| 大厂| 辽宁省| 九江市| 洛阳市| 镇赉县| 嵊泗县| 鄂托克旗| 卢氏县| 古交市| 平昌县| 娄底市| 通榆县| 剑川县| 新乡市| 育儿| 修文县| 三门县| 蒲城县| 宝丰县| 和田市| 海安县| 疏勒县| 梁山县| 延庆县|