Spring boot 核心源码浅析系列
文章平均质量分 93
本专栏将从深入理解 Spring Boot 的核心源码,逐步深入探讨 Spring Boot 的启动流程、自动配置、Starter 和插件等重要特性的实现原理。通过本专栏的学习,您将能够更好地利用 Spring Boot 构建高效、可扩展的应用程序,并在日常开发中遇到问题时更加从容应对。
冰点.
《Redis从入门到精通2023版》作者-
日拱一卒无有尽,功不唐捐终入海。路漫漫其修远兮。吾将上下而求索
展开
-
聊聊Spring的Aware接口
背景: 最近有开发同学问我项目里面有很多地方实现了Aware 接口,到底是什么作用。他说这个原因是在我们的工程代码中看到有一些代码里实现了ResourceLoaderAware、BeanNameAware、ApplicationContextAware、BeanFactoryAware接口。我没法直接笼统回答,也没有法一句话简答,只好侧面的告诉他Aware接口是Spring 为了提供拓展的一种设计思想。凡是带Aware后缀的接口。主要作用是为了让实现了该接口的Bean在Spring容器中具有回调功能。原创 2023-09-19 22:20:45 · 548 阅读 · 1 评论 -
Springboot+mybatis-plus+dynamic-datasource+Druid 多数据源 分布式事务
Springboot+mybatis-plus+dynamic-datasource+Druid 多数据源事务,dynamic-datasource分布式事务原创 2023-08-25 07:15:00 · 1651 阅读 · 7 评论 -
三分钟了解Spring Boot启动原理
该方法接受两个参数,第一个参数是启动类的类对象,第二个参数是主方法的参数。好了基本上三分钟差不多了,希望对大家有所帮助,如果有问题可以评论区或者私信留言。等,这些方法是 Spring Boot 应用程序启动的关键步骤,它们会对应用程序进行配置、初始化、启动等操作。注解标记该类,以告诉 Spring Boot 这是应用程序的启动类。这三个注解,分别表示该类是配置类、开启自动配置和扫描组件。在 Spring Boot 应用程序的启动类中,需要使用。方法中,还会调用一些其他的方法,如。接下来咱们通过源码解析。原创 2023-05-15 23:13:53 · 751 阅读 · 1 评论 -
Spring Boot 容器扩展BeanFactoryPostProcessor、BeanPostProcessor、 BeanDefinitionRegistryPostProcessor用法和解析
之所以在企业级应用中Spring 到Spring Boot 一直立于不败之地,保持火热,其中很关键的一个点是,它的扩展简直太强大了,上一篇,我们聊了一下 Spring Boot整个生命周期中的扩展点,,比如可以监听应用的各个阶段。本文我们聊聊,Spring 容器上的扩展。可用于自定义和扩展 Spring 容器的行为。其中,三个常见的容器扩展接口是和。通过实现这些接口,开发者可以自定义 Spring 容器的行为,从而更好地满足应用程序的需求。原创 2023-07-28 23:19:52 · 443 阅读 · 18 评论 -
Spring Boot 应用程序生命周期扩展点妙用
上一篇我们着重按照分类讲解了一下Spring Boot的常见扩展点,接下来我们讲解一下Spring Boot 的应用程序生命周期扩展点的一些妙用。Spring Boot的应用程序生命周期扩展点是一些接口,可以让开发者在应用程序的不同生命周期阶段插入自己的逻辑。这些扩展点可以帮助开发者在应用程序启动、关闭、重启等阶段执行一些额外的操作。下面介绍几个常用的应用程序生命周期扩展点:ApplicationRunner和CommandLineRunner:这两个接口可以在应用程序启动完成后执行一些初始化的操作。原创 2023-07-27 23:55:54 · 85394 阅读 · 27 评论 -
扩展点都不知道不要说你用了Spring Boot
Spring Boot也提供了丰富的扩展点,开发人员可以通过扩展点来实现自定义的应用程序功能和行为。本文将介绍Spring Boot的扩展点分类和特点,帮助大家更好地理解和应用Spring Boot的扩展点原创 2023-07-26 16:06:41 · 434 阅读 · 22 评论 -
三分钟了解SpringBoot配置优先级底层源码解析
背景:最近有个开发同学问我,为什么他在配置文件里面配置了端口号但是一直不生效,我看了后发现在其他地方已经配置过端口号了,所以当前配置不生效,那么到底Spring Boot 是如何处理配置文件的呢,在配置项重复的情况下又是如何处理的呢在Spring Boot中,可以使用.properties或.yml文件来配置应用程序属性。原创 2023-06-01 18:43:52 · 1112 阅读 · 1 评论 -
Spring Boot源码中设计模式应用浅析
背景:大家好,我是冰点。最近有网友反馈,他在面试过程中被面试官问到,设计模式,他按自己背设计模式的八股文回答了,之后面试官又追问了一句,那你知道 你们项目所用的spring boot都使用了哪些设计模式呢,这些设计模式是怎么应用的呢?。我这位网友,说自己直接懵逼,瞬间感觉之前背的设计模式八股文,一文不值哈哈。那今天我们分析一下Spring Boot 源码中的设计模式应用。工欲善其事必先利其器。加油。原创 2023-05-25 11:20:23 · 1739 阅读 · 1 评论 -
三分钟了解Spring Boot 的启动流程
背景:最近有位开发同学说面试被问到Spring Boot 的启动流程,以及被问到Spring Boot 的嵌入式Web容器是什么时候加载的。如何加载的。是怎么无缝切换的。这些问题,其实回答起来也是比较复杂的。我们今天就从入口,逐渐向下看下执行流程。来试着回答一下前面这两个问题。后面关于SpringBoot 的web容器可以无缝随意切换为jettyundertow..这个问题的回答涉及到Spring Boot是如何设计WebServer的。我们后续专门讲解一下。原创 2023-06-02 17:48:37 · 3407 阅读 · 47 评论 -
3分钟了解FactoryBean的作用和底层工作原理
大家好,我是冰点,本节我们通过对接口源码解析,以及使用示例剖析,让大家3分钟了解FactoryBean的作用和底层工作原理。以及FactoryBean的使用场景,学以致用。是Spring框架中的一个接口,用于创建和管理其他Bean实例的对象。的底层工作原理是通过实现接口并实现其中的方法来创建和管理Bean实例。以下是。原创 2023-05-17 09:12:52 · 2102 阅读 · 2 评论 -
SpringBoot之自动配置类的解析和过滤机制
假设我们的项目需要使用一个名为 MyService 的服务,我们可以定义一个自动配置类 MyServiceAutoConfiguration,它可以根据项目的配置来初始化 MyService 实例。} }在上面的代码中,我们使用了@注解来启用配置类,并且使用@注解来判断MyService是否在类路径上可用。在@Bean 方法中,我们使用了@ConditionalOnMissingBean 注解来判断当前应用程序上下文中是否已经存在 MyService 实例,如果不存在,则创建一个新的实例。原创 2023-04-16 16:27:41 · 424 阅读 · 0 评论