Spring Boot 是如何知道需要启动哪个 Web 容器的?

框架 

Spring Boot 如何确定当前要使用哪个容器呢? Spring Boot 的启动入口: /** * 启动应用程序。 */ public ConfigurableApplicationContext run(String... args) { ... tr

手写 Spring Boot 的启动流程

框架 

前言 相信每一个 Java 开发者对于 Spring Boot 都不会陌生, Spring Boot 的出现,极大的简化了我们开发 web 应用的难度。此外,Spring Boot 还具有如下优势: 简化配置:Spring Boot 提供了默认配置,减少了开发人员需要进行手动配置的工作,从而提高了开

Spring 事务、数据库事务使用及原理详解

框架 

什么是事务 事务是逻辑上的一组操作,要么都执行,要么都不执行。 相信大家应该都能背上面这句话了,下面我结合我们日常的真实开发来谈一谈。 我们系统的每个业务方法可能包括了多个原子性的数据库操作,比如下面的 savePerson() 方法中就有两个原子性的数据库操作。这些原子性的数据库操作是有依赖的,它

Spring 循环依赖问题

框架 

首先上总结 针对 Spring Bean 的循环依赖问题,如果情况允许,尽量不使用临时规避的手段容忍循环依赖问题。如果因存量代码的问题,尽量将消除循环依赖作为高优先级历史债务进行解决。 在 Spring Boot 2.6.0 版本开始,默认禁用对循环依赖的支持。也就是说,Spring Boot 2.

Spring Boot 自动装配原理

框架 

概要 Spring Boot 的自动配置(auto-configuration)是 Spring Boot 框架中一个非常重要的特性,可以大幅度简化 Spring 应用程序的配置和开发。其核心思想是根据应用程序所依赖的 jar 包和类路径上的资源,自动配置和装配 Spring 应用程序所需要的各种组

Spring IOC

框架 

IOC 是什么? Spring IOC(Inversion of Control,控制反转)是 Spring 框架的核心概念之一。它是通过依赖注入(Dependency Injection) 实现的。IOC 让对象的创建与管理职责由容器负责,而不是由对象自身控制。 核心思想:控制反转意味着将对象的创