Spring Boot 启动原理解析(二) Tomcat 启动详解

前言

在上一篇启动原理解析中的对Spring Boot的启动原理进行了初略的解读,下面接着上篇的篇幅对你们经常使用的Tomcat web容器在Spring-Boot中启动机制进行详解。html

在解读embeddedTomcat容器启动以前有几个要点需读懂web

  • Spring Boot @ConfigurationProperties 注解
  • Spring Boot容器的自动装载机制

@ConfigurationProperties

在上篇解读 Spring Boot 启动原理 中遗留一些问题:如何修改Tomcat端口、在Spring Boot如何修改其默认参数 、Spring Boot 如何读取application.properties配置参数。spring

首先要知道一个核心事件监听器ConfigFileApplicationListener在Spring Boot 微程序启动加载注册listener过程当中首先加载的就是此监听器。这个监听器的核心做用就是读取application.properties配置文件内容。微程序的application.properties配置文件有4个默认路径:classpath:/,classpath:/config/,file:./,file:./config/bash

读取搭配配置文件中的参数后经过@ConfigurationProperties注解的一个松散的绑定机制注入到默认配置实体类中。咱们能够在spring-boot-autoconfigure.jar架包中看到更多的默认配置。你们也可直接浏览官网提供的配置参数 app

Spring Boot 容器自动装载机制

Spring Boot 经过扫描 classpath下的实例决定装载哪一个web容器。 pom.xml文件中添加web容器依赖

Jetty容器依赖
<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-jetty</artifactId>
</dependency>
复制代码
Tomcat容器依赖
<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-web</artifactId>
</dependency>
复制代码

在作Demo时我尝试引入TomcatJetty两个依赖,最后微程序选择启动了Tomcatspring-boot

Spring Boot Tomcat 启动

最直接简单粗暴的启动解析。 微服务

在Tomcat的启动过程当中咱们会发现,Spring Boot自动装载Tomcat容器后启动过程当中是经过 Connector实例来设置微服务访问端口的。

The last

三人行,必有我师。在给你们分享干货的同时,才疏学浅还望你们大刀予以斧正。也欢迎关注个人简书,名称为柴码spa

相关文章
相关标签/搜索