SpringBoot配置嵌入式Servlet容器和使用外置Servlet容器的教程图解

下面是详细讲解 SpringBoot 配置嵌入式 Servlet 容器和使用外置 Servlet 容器的教程图解。

下面是详细讲解 SpringBoot 配置嵌入式 Servlet 容器和使用外置 Servlet 容器的教程图解。

嵌入式Servlet容器

Spring Boot 内置了常用的嵌入式 Servlet 容器,如 Tomcat、Jetty、Undertow 等。开发者不需要手动配置这些容器,只需要在项目中添加相应的依赖即可。

配置 Tomcat

添加 Tomcat 依赖:

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

默认情况下,Spring Boot 使用 Tomcat 作为嵌入式 Servlet 容器,在 application.properties 文件中可以进行配置,例如修改端口号:

server.port=8081

配置 Jetty

添加 Jetty 依赖:

<dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-jetty</artifactId>
</dependency>

在 application.properties 文件中配置 Jetty:

server.port=8082
server.servlet.context-path=/demo
server.jetty.acceptors=2
server.jetty.selectors=4
server.jetty.threadPool.maxThreads=500

配置 Undertow

添加 Undertow 依赖:

<dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-undertow</artifactId>
</dependency>

在 application.properties 文件中配置 Undertow:

server.port=8083
server.undertow.worker-threads=100
server.undertow.io-threads=50

外置Servlet容器

开发者也可以使用外置的 Servlet 容器,例如 Tomcat、Jetty、WebLogic 等。使用外置 Servlet 容器需要在 pom.xml 文件中排除内置的 Servlet 容器依赖。

配置 Tomcat

排除内置的 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>

添加 Tomcat 外置依赖:

<dependency>
  <groupId>org.apache.tomcat.embed</groupId>
  <artifactId>tomcat-embed-core</artifactId>
  <version>9.0.37</version>
</dependency>
<dependency>
  <groupId>org.apache.tomcat.embed</groupId>
  <artifactId>tomcat-embed-websocket</artifactId>
  <version>9.0.37</version>
</dependency>

在 Tomcat 安装目录下,找到 conf/server.xml 配置文件,修改端口号:

<Connector port="8081" protocol="HTTP/1.1"
           connectionTimeout="20000"
           redirectPort="8443" />

配置 WebLogic

排除内置的 WebLogic 依赖:

<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>

添加 WebLogic 外置依赖:

<dependency>
  <groupId>javax</groupId>
  <artifactId>javaee-web-api</artifactId>
  <version>7.0</version>
  <scope>provided</scope>
</dependency>
<dependency>
  <groupId>com.oracle.weblogic</groupId>
  <artifactId>weblogic-server-pom</artifactId>
  <version>12.2.1.4</version>
  <type>pom</type>
  <scope>provided</scope>
</dependency>

在 WebLogic 控制台中,将项目部署到指定的服务器和端口上。

总结

通过上述示例,我们可以发现,在使用 Spring Boot 配置嵌入式 Servlet 容器和使用外置 Servlet 容器的时候,需要添加相应的依赖,并配置相关的参数。对于开发者而言,选择嵌入式 Servlet 容器还是外置 Servlet 容器,主要取决于具体场景和需求。

本文标题为:SpringBoot配置嵌入式Servlet容器和使用外置Servlet容器的教程图解

基础教程推荐