https://juejin.im/post/5a3273a451882575d42f68f9
在解读embeddedTomcat
容器启动之前有几个要点需读懂
Spring Boot @ConfigurationProperties
注解Spring Boot
容器的自动装载机制
@ConfigurationProperties
在上篇解读 中遗留一些问题:如何修改Tomcat
端口、在Spring Boot
如何修改其默认参数 、Spring Boot
如何读取application.properties
配置参数。
首先要知道一个核心事件监听器ConfigFileApplicationListener
在Spring Boot 微程序启动加载注册listener
过程中首先加载的就是此监听器。这个监听器的核心作用就是读取application.properties
配置文件内容。微程序的application.properties
配置文件有4个默认路径:classpath:/,classpath:/config/,file:./,file:./config/
读取搭配配置文件中的参数后通过@ConfigurationProperties
注解的一个松散的绑定机制注入到默认配置实体类中。我们可以在spring-boot-autoconfigure.jar
架包中看到更多的默认配置。大家也可直接浏览
Spring Boot 容器自动装载机制
Spring Boot 通过扫描
classpath
下的实例决定装载哪个web容器。 pom.xml
文件中添加web容器依赖
Jetty容器依赖org.springframework.boot spring-boot-starter-jetty
Tomcat容器依赖org.springframework.boot spring-boot-starter-web
在做Demo
时我尝试引入Tomcat
、Jetty
两个依赖,最后微程序选择启动了Tomcat
。
Spring Boot Tomcat 启动
最直接简单粗暴的启动解析。
在Tomcat的启动过程中我们会发现,Spring Boot自动装载Tomcat容器后启动过程中是通过Connector
实例来设置微服务访问端口的。