切換語言為:簡體

Spring Boot Starter Web 與 Spring Boot Starter Tomcat 的區別

  • 爱糖宝
  • 2024-07-22
  • 2171
  • 0
  • 0

Spring Boot 建立在 Spring 的基礎之上,包含 Spring 的所有功能。如今,Spring Boot 已成為開發人員的最愛,因為其快速的環境配置特性可讓開發人員直接專注於邏輯,而不是糾結於配置和設定。Spring Boot 是一個基於微服務的框架,用它開發一個為服務專案只需很短的時間。 以下是 Spring Boot 的一些特性:

  • 可以避免使用 Spring 中的 XML 進行繁瑣的配置 

  • 可以輕鬆維護和建立 REST 端點 

  • 包含嵌入式 Tomcat 伺服器 部署非常簡單,

  • war 和 jar 檔案可以輕鬆部署到 Tomcat 伺服器中 

Spring Boot Starter Web 

主要用於構建 Web 應用程式,其中包括使用 Spring MVC 的 RESTful 應用程式。它使用 Tomcat 作為預設的嵌入式容器。 

它有兩個重要特性:

  • 與 WEB 開發相容

  • 可自動配置

我們需要在 Spring Boot Starter Web 的 pom.xml 檔案中新增以下依賴關係:

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

它使用 Spring MVC、REST 和 Tomcat 作為預設的嵌入式伺服器。 只需要配置 spring-boot-starter-web 依賴項便可以實現引入開發所需要的相關依賴項。它還能減少構建依賴的數量。spring-boot-starter-web 主要依賴於以下內容:

  • org.springframework.boot:spring-boot-starter

  • org.springframework.boot:spring-boot-starter-tomcat

  • org.springframework.boot:spring-boot-starter-validation

  • com.fasterxml.jackson.core:jackson-databind

  • org.springframework:spring-web

  • org.springframework:spring-webmvc

預設情況下,spring-boot-starter-web 包含下面給出的 tomcat 伺服器依賴關係:

<dependency>   
  <groupId>org.springframework.boot</groupId>   
  <artifactId>spring-boot-starter-tomcat</artifactId>   
  <version>2.0.0.RELEASE</version>   
  <scope>compile</scope>   
</dependency>

Spring-boot-starter-web 會自動配置網路開發所需的以下內容:

  • Dispatcher Servlet

  • 錯誤頁面 

  • 嵌入式 Servlet 容器 

  • 用於管理靜態依賴關係的 Web JAR

Spring Boot 還支援 Jetty Server 和 Undertow Server。 它們都是嵌入式網路伺服器。 我們還可以按如下方法將 spring-boot-starter-tomcat 從 spring-boot-starter-web 中排除:

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

Spring Boot Starter Tomcat

Spring-boot-starter-tomcat 包含與 Tomcat 伺服器相關的所有內容,它有

  • core

  • el

  • logging

  • WebSocket

它有以下依賴項:

<dependency>   
  <groupId>org.apache.tomcat.embed</groupId>   
  <artifactId>tomcat-embed-core</artifactId>   
  <version>8.5.23</version>   
  <scope>compile</scope>   
</dependency>   
<dependency>   
  <groupId>org.apache.tomcat.embed</groupId>   
  <artifactId>tomcat-embed-el</artifactId>   
  <version>8.5.23</version>   
  <scope>compile</scope>   
</dependency>   
  <dependency>   
  <groupId>org.apache.tomcat.embed</groupId>   
  <artifactId>tomcat-embed-websocket</artifactId>   
  <version>8.5.23</version>   
  <scope>compile</scope>   
</dependency>

Spring Boot Starter Web 與 Spring Boot Starter Tomcat 的區別

Spring Boot Starter Web

Spring Boot Starter Tomcat

Spring Boot Starter Web 用於使用 Spring MVC 構建 RESTful 應用程式。 Spring Boot Starter Tomcat 是 Spring Boot Starter Web 的預設嵌入式容器。 
在使用網路服務時我們不能將其排除。 當我們想使用另一個嵌入式容器時,我們可以將其排除。
同時還支援 Jetty Server 和 Undertow Server。 只充當一個嵌入式網路伺服器。
它可自動配置 Dispatcher Servlet、Error Page、Embedded servlet container 和 Web JAR,以管理網路開發的靜態依賴關係。 它包含core、el、logging、WebSocket。
它包含 spring web 依賴項。 它包含與嵌入式 tomcat 伺服器相關的所有內容。
它自動配置用於 Web 開發的功能。 它被用作預設的嵌入容器。

0則評論

您的電子郵件等資訊不會被公開,以下所有項目均必填

OK! You can skip this field.