Spring中的ConfigurationClassParser一文中,提到了会把一些解析结果,如bean方法、需要导入的配置文件资源和bean定义注册器保存在ConfigurationClass对象的属性中。后续ConfigurationClassPostProcessor会调用ConfigurationClassBeanDefinitionReader来处理。本文就来分析一下是怎么处理的。

AbstractApplicationContext类的refresh方法是Spring Framework中的关键核心实现,Spring Framework的源码分析主要就是围绕该函数来进行的。在refresh方法中会调用obtainFreshBeanFactory来创建和刷新BeanFactory,本文就来分析一下这个过程。

Tomcat的启动流程一文中分析到在AbstractEndpoint中会创建服务端socket并绑定地址进行监听,但没有涉及当请求进来之后Tomcat是怎么处理的。本文就来分析一下该问题。

MySQL是一个多线程程序,使用了Reactor模型。主线程在完成了启动初始化操作后,最后会进入一个事件循环,等待客户端的连接请求。本文分析MySQL是怎么进入事件循环的,以及在这个事件循环中是怎么处理连接请求的?

Spring Boot提供了对Web服务器的内置支持,会自动配置和创建Web服务器。本文分析最常见的Servlet服务器Tomcat和基于Netty的WebFlux服务器的配置与创建过程。

在开发中我们只需要在控制器中编写好handler方法,并配置好映射,Spring就会把请求自动导向我们写好的方法。Spring在收到请求时肯定是需要根据请求的URL来匹配handler,这是肯定需要知道有哪些handler。本文来分析Spring是怎么知道有哪些handler的,以及是怎么注册的?

传统的spring-mvc应用中,需要在web.xml中配置DispatcherServlet并配置好映射的路径。Spring Boot以的最大特点就是自动配置,用户可以开箱即用。那Spring Boot内部是怎么配置的呢?本文就来分析一下这个问题。

ArrayList是Java开发中最常使用的集合之一。剖析内部使用实现机制,在应用中能够避免一些使用问题,更能得心应手。

一般在Spring Boot应用的主方法中,都会调用SpringApplication类中的run方法来启动框架。而该方法则是Spring Boot的运行流程这条主线的入口,本文将会以此方法为起点,来完整分析Spring Boot的运行流程。