SpringBoot复习(39)Servlet容器的自动配置原理

news/2025/1/15 18:12:05/

Servlet容器自动配置类为ServletWebServerFactoryAutoConfiguration
在这里插入图片描述
可以看到通过@Import注解导入了三个配置类:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
通过这个这三个配置类可以看出,它们都使用了@ConditionalOnClass注解,当类路径存在tomcat相关的类时,会配置一个TomcatServletWebServerFactory类型的bean, 当类路径存在jetty相关的类时,会配置一个JettyServletWebServerFactory 类型的bean, 当类路径存在undertow相关的类时,会配置一个UndertowServletWebServerFactory类型的bean。
这样就完成了根据pom.xml中引入了不同的依赖来决定使用哪种Servlet容器。

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

http://www.ppmy.cn/news/1027801.html

相关文章

Atomic实现:变量的原子操作

文章目录 使用场景核心实现逻辑atomic实现思考参考 使用场景 多个goroutine里面安全访问共享变量 核心实现逻辑 通过系统的CPU指令来保证对变量的原子操作&#xff0c;如i386的LOCK指令 atomic实现 代码主要包含如下功能&#xff0c;实际为三种类型&#xff0c;通用类型Val…

python中range()函数详解(含反序输出)

目录 前言 语法 参数 返回值 示例 反序 前言 range() 函数是 Python 内置的用于生成整数序列的函数。它可以用于 for 循环、列表生成式等场景。下面是 range() 函数的详细说明&#xff1a; 语法 range(stop) range(start, stop[, step]) 参数 start&#xff08;可选…

Spark 3.4.x 对 from_json regexp_replace组合表达式慢问题的解决

背景 在Spark 3.1.1 遇到的 from_json regexp_replace组合表达式慢问题的解决 中其实在spark 3.4.x已经解决了&#xff0c; 具体的解决方法可以见 SPARK-44700&#xff0c; 也就是设置spark.sql.optimizer.collapseProjectAlwaysInline 为 false &#xff08;默认就是false&a…

隐藏挖矿木马rcu_tasked的查杀

0. 目录 1. 前言2. 排查2.1 找出导致问题的进程2.2 定位进程详细信息2.3 阻止进程重启2.4 重启服务器 3. 加固系统4. 其他相关排查手段5. 相关 1. 前言 本来没打算写这篇博客的&#xff0c;因为本身自己对于linux就属于一知半解&#xff0c;但奈何类似的问题遇到了好几次&…

ES索引重建reindex详解

目录 一、使用场景 二、reindex介绍 三、使用手册 1、覆盖更新 2、创建丢失的文档并更新旧版本的文档 3、仅创建丢失的文档 4、冲突处理 5、source中添加查询条件 6、source中包含多个源索引 7、限制处理的记录数 8、从远程ES集群中重建索引 9、提取随机子集 10、…

Spring Boot配置文件中的配置项加密jasypt使用

在Spring Boot中&#xff0c;有很多口令需要加密&#xff0c;如数据库连接密码、访问第三方接口的Token等。常见的方法就是用jasypt对口令进行加密。 实际上&#xff0c;jasypt可以对配置文件中任意配置项的值进行加密&#xff0c;不局限于对密码的加密。 1.在pom.xml中添加ja…

38 | 浦发银行股票分析案例

本文将通过一个浦发银行股票分析案例,探讨如何从多个维度对股票进行分析,包括基本面、技术面和市场环境等因素。我们将深入挖掘浦发银行的财务数据、业务模式以及市场定位,以了解其内在价值和潜在风险。同时,我们还将考察技术面的指标,如价格走势、均线形态等,以揭示市场…