Spring Boot Starter Web和Spring Boot Starter Tomcat的区别

Spring Boot Starter Web和Spring Boot Starter Tomcat的区别

Spring Boot构建在Spring之上,包含Spring的所有特性。由于其快速的产品就绪环境,使得开发人员可以直接专注于逻辑,而不是纠结于配置和设置,它现在成为开发人员的最爱。Spring Boot是一个基于微服务的框架,在其中制作一个产品应用只需要很少的时间。以下是Spring Boot的一些特性:

  • 它可以避免春季出现的大量XML配置
  • 它提供了简单的维护和REST端点的创建
  • 它包含嵌入式的Tomcat-server
  • 部署非常容易,war和jar文件可以很容易地部署在tomcat服务器上

Spring Boot Starter Web

它主要用于使用Spring MVC构建包含RESTful应用程序的web应用程序。它使用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依赖项可以拉入所有与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自动配置web开发所需的以下内容:

  • Dispatcher Servlet
  • Error Page
  • 嵌入servlet容器
  • 用于管理静态依赖关系的Web jar

Spring Boot还支持Jetty Server和Undertow Server。它们是嵌入式web服务器。我们也可以从spring-boot-starter-web中排除spring-boot-starter-tomcat,如下所示:

<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的默认嵌入式容器。
我们不能在使用web服务时排除它。 当我们想要使用另一个嵌入式容器时,可以排除它。
它还支持Jetty服务器和Undertow服务器。 它充当嵌入式web服务器。
它自动配置Dispatcher Servlet、错误页面、嵌入式Servlet容器和Web jar,用于管理Web开发的静态依赖项。 它有一个核心,el。日志,WebSocket。
它包含spring web依赖项。 它包含与嵌入式tomcat服务器相关的所有内容。
它自动配置用于web开发的特性。 它被用作默认的嵌入式容器。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程