我们知道,一个项目的启动是需要 web 服务器的,我们一般使用的web 服务器是 tomcat ,而我们创建的 Spring Boot 项目,我们都是直接启动即可,这并不是说我们创建的 Spring Boot 项目没有 web 服务器,而是在它的内部已经集成了 tomcat 服务器:
我们之前在使用 tomcat 服务器时,容器配置我们可以在 server.xml 文件中进行配置,这时候我们的 Spring Boot 想要配置 web 服务器要在哪里配置呢?
我们 Web 服务器的配置都是在 resources 目录下的 application.properties
中进行配置:
我们在启动项目时就可以看到我们在application.properties
中配置的信息:
使用其它 Web 服务器
我们做 web 开发,不一定使用 tomcat 服务器做容器,至于 web 服务器还是有很多,如: jetty、undertow等 web 服务器。
对于 servlet 堆栈应用程序,spring-boot-starter-web
包括Tomcat: spring-boot-starter-tomcat
,但您可以使用spring-boot-starter-jetty
或 spring-boot-starter-undertow
替代。
排除依赖并引用 jetty
依赖
切换到其他 HTTP 服务器时,除了包含所需的依赖项外,还需要排除默认依赖项。Spring Boot 为 HTTP 服务器提供单独的启动程序,以帮助使此过程尽可能简单。
以下Maven示例显示了如何排除Tomcat并为Spring MVC包含Jetty:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<exclusions>
<exclusion>
<!--排除Tomcat依赖关系-->
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
</dependency>
<!--使用 jetty -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jetty</artifactId>
</dependency>
然后启动项目:
我们可以看到已经显示是使用 jetty
容器启动的。
注意:
至于 jetty
容器的配置也是在 application.properties
配置文件中进行配置。
至于 undertow
容器,小编这里就不做演示了,有兴趣的朋友可以自行尝试,如有疑问请留言!!!