java程序设计开发,设计思想Spring开源框架-SpringBoot原理与实战之嵌入式WEB容器学习笔记,允许将应用打包成可执行的 JAR 文件,直接运行,无需额外部署到外部容器。
Java 程序设计开发:Spring Boot 原理与实战之嵌入式 WEB 容器过程学习笔记
一、嵌入式 Web 容器概述
在传统的 Java Web 开发中,需要将应用打包成 WAR 文件,然后部署到外部的 Web 容器(如 Tomcat、Jetty)中运行。而 Spring Boot 提供了嵌入式 Web 容器的支持,允许将应用打包成可执行的 JAR 文件,直接运行,无需额外部署到外部容器。Spring Boot 支持的嵌入式 Web 容器主要有 Tomcat、Jetty 和 Undertow。
二、Spring Boot 嵌入式 Web 容器启动过程
(一)自动配置
Spring Boot通过自动配置机制,根据类路径下的依赖自动选择合适的嵌入式 Web 容器。例如,如果类路径中包含 spring-boot-starter-web
依赖,默认会使用 Tomcat 作为嵌入式 Web 容器。这是由 @EnableAutoConfiguration
注解触发的,该注解会导入一系列的自动配置类,其中就包括与嵌入式 Web 容器相关的配置类。
(二)创建嵌入式 Web 容器实例
在应用启动过程中,Spring Boot 会创建嵌入式 Web 容器的实例。以 Tomcat 为例,会创建 TomcatEmbeddedServletContainerFactory
实例,该实例负责创建和配置 Tomcat 容器。
(三)配置嵌入式 Web 容器
可以通过配置文件(