Spring Boot 可选择内嵌 Tomcat、Jetty 和 Undertow,因此我们不需要以 war 包形式部署项目。《Spring Boot 揭秘与实战(五) 服务器篇 - 内嵌的服务器 Tomcat剖析》一文,已经讲解了内嵌的服务器 Tomcat,那么,这篇文章大概讲解下另外两个内嵌的服务器 Jetty 和 Undertow。
Jetty 的切换
Spring Boot 默认使用的是 Tomcat 作为内嵌的服务器,但是 Spring Boot 对 Jetty 也做了很好的支持,作为一个内嵌的服务器使用。
如果想要使用 Jetty 服务器,我们只要做两个步骤即可。
首先,修改 POM 文件,排除依赖。
- <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>
然后,修改 POM 文件,增加Jetty依赖。
- <dependency>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-starter-jetty</artifactId>
- </dependency>
Undertow的使用
Undertow 是一个采用 Java 开发的灵活的高性能 Web 服务器,提供包括阻塞和基于 NIO 的非堵塞机制。Undertow 是红帽公司的开源产品,是 Wildfly 默认的 Web 服务器。
Spring Boot 对 Undertow 也做了很好的支持,作为一个内嵌的服务器使用。
如果想要使用 Undertow 服务器,我们只要做两个相同的配置。
首先,修改 POM 文件,排除依赖。
- <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>
然后,修改 POM 文件,增加 Undertow 依赖。
- <dependency>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-starter-undertow</artifactId>
- </dependency>
(完)