【Spring Boot 源码学习】SpringApplication 的 run 方法核心流程介绍

一、引言

在前面的博文《初识 SpringApplication》中,Huazie 带大家一起分析了 SpringApplication 类实例化的逻辑。当 SpringApplication 对象被创建之后,我们就可以调用它的 run 方法来启动和运行 Spring Boot 项目。

本篇博文将围绕 SpringApplicationrun 方法展开,带大家一起从源码分析 Spring Boot 的运行流程。

【Spring Boot 源码学习】ConditionEvaluationReport 日志记录上下文初始化器

一、引言

上篇博文《共享 MetadataReaderFactory 上下文初始化器》Huazie 带大家详细分析了
SharedMetadataReaderFactoryContextInitializer 。而在 spring-boot-autoconfigure 子模块中预置的上下文初始化器中,除了共享 MetadataReaderFactory 上下文初始化器,还有一个尚未分析。

那么本篇就来详细分析一下 ConditionEvaluationReportLoggingListener 【即 ConditionEvaluationReport 日志记录上下文初始化器】。

【Spring Boot 源码学习】共享 MetadataReaderFactory 上下文初始化器

一、引言

上篇博文《深入 ApplicationContext 初始化器实现》Huazie 带大家详细分析了 分析 Spring Boot 中预置的应用上下文初始化器实现【即 ApplicationContextInitializer 接口实现类】的源码,了解了在 Spring 容器刷新之前初始化应用程序上下文的一些具体操作。

当然其中有些实现源码比较复杂,还没有深入分析。那本篇就来对其中的
SharedMetadataReaderFactoryContextInitializer 【即 共享 MetadataReaderFactory 上下文初始化器】详细分析下。

【Spring Boot 源码学习】深入 ApplicationContext 初始化器实现

一、引言

前面的博文《ApplicationContextInitializer 详解》Huazie 带大家详细分析了 ApplicationContextInitializer 的加载和初始化的逻辑,不过有关 ApplicationContextInitializer 接口的实现尚未提及 。

那本篇 Huazie 就带大家一起分析 Spring Boot 中预置的应用上下文初始化器实现【即 ApplicationContextInitializer 接口实现类】的源码,了解在 Spring 容器刷新之前初始化应用程序上下文的一些具体操作。

【Spring Boot 源码学习】BootstrapContext的实际使用场景

一、引言

上一篇博文《BootstrapRegistry 初始化器实现》Huazie 向大家介绍了如何自定义 BootstrapRegistryInitializer 接口实现,并以此来执行自定义的初始化操作【如注册自定义的 Bean、添加 BootstrapContext 关闭监听器】。其中涉及到了 BootstrapContext 的部分使用场景,那本篇就向大家演示下 Spring Boot 启动过程中如何使用引用上下文 BootstrapContext 及其默认实现 。

【Spring Boot 源码学习】BootstrapRegistry 初始化器实现

一、引言

前面的博文《BootstrapRegistryInitializer 详解》,Huazie 带大家一起详细分析了 Spring Boot 启动时加载并初始化 BootstrapRegistryInitializer 及其相关的类的逻辑。本篇就让我们自定义 BootstrapRegistryInitializer 接口实现,以此来执行自定义的初始化操作【如注册自定义的 Bean、添加 BootstrapContext 关闭监听器】。

【Spring Boot 源码学习】深入 BootstrapContext 及其默认实现

一、引言

书接前文《BootstrapRegistry 详解》,在介绍 BootstrapRegistry 的内部类 InstanceSupplierget 方法时,看到了它的唯一参数 BootstrapContext 接口【即引导上下文】。而这个接口及其默认实现就是本篇要重点介绍的对象,且听我娓娓道来。

Sublime Text 3配置 Node.js 开发环境

一、引言

Node.js 是基于 Chrome JavaScript 运行时建立的一个平台,它简单理解就是运行在服务端的 JavaScript。它的开发环境有很多,比如 VS CodeAtom 等等,相信大家多多少少都有接触过;而本篇 Huazie 将要介绍一个比较轻量级的开发工具 Sublime Text 3,并用它来配置 Node.js 的开发环境。

【Spring Boot 源码学习】BootstrapRegistry 详解

一、引言

前面的博文《BootstrapRegistryInitializer 详解》,Huazie 带大家一起详细分析了 Spring Boot 启动时加载并初始化 BootstrapRegistryInitializer 及其相关的类的逻辑。其中有个 BootstrapRegistry 接口只是简单提及,本篇就详细分析一下 BootstrapRegistry 接口,这对于我们后续理解 《BootstrapRegistry 初始化器实现》的内容至关重要。

Sublime Text 3配置 Java 开发环境

一、引言

Java 是一种跨平台、面向对象、功能强大且安全可靠的编程语言。它有很多常用的开发工具,比如 EclipseIDEA 等等,相信大家多多少少都有所涉猎;而本篇 Huazie 将要介绍一个比较轻量级的开发工具 Sublime Text 3,并用它来配置 Java 开发环境。