前言
现在 Spring Boot 这么流行,为什么还要学习 Tomcat?确实 Spring Boot 内置 Tomcat 了,不再需要我们进行配置就可以访问 Web 项目。但是正因为 Spring Boot 使用了内置 Tomcat。我们才更需要了解 Tomcat 的核心原理。这样在报错的情况下才能快速定位到问题。
这篇文章给大家带来 Tomcat 源码解读。主要解读 Tomcat 在启动阶段是怎样执行的,以及启动完成后,怎样监听请求以及处理请求的。
学习本场 Chat 您将了解到:
Tomcat 源码环境搭建
Tomcat 启动流程
Tomcat 启动流程源码剖析
请求访问 Tomcat 执行流程
请求流程源码剖析
Spring Boot 作为现在 Java 程序员必会的技能,我们在享受它提供便捷的同时,也需要来了解它底层原理,做到知其然知其所以然。所我们就一起学习探讨下 Spring Boot 的启动流程吧。
依赖管理
在进入主题之前,我们先来思考个问题?我们在用 Spring Boot 的时候,添加依赖是不是很方便,不用关心版本号,这是为什么呢?
因为 Spring Boot 知道你懒,所以帮你做了哈哈,其实 Spring Boot 为了方便管理管理,避免依赖冲突。
那在哪里为我们做了呢?
我们可以看到 pom 文件中的 parent,点击 spring-boot-starter-parent:
点击之后发现还有一个 parent。父亲的父亲就是我们的爷爷,我们点进爷爷中看下。
发现了什么?是不是发现爷爷中都为我们配置好了常用 jar 的版本。所以我们不用显性的配置版本号。