spring
文章平均质量分 91
涉及spring生态所有文章的集合。主要包括spring,spring boot和spring cloud。包括源码解析,原理分析,扩展等内容
York Li
宝剑锋从磨砺出,梅花香自苦寒来。定位技术人,在技术的路上希望我们一起前行。
展开
-
Spring源码分析:AbstractBeanFactory抽象实现分析
Spring源码分析:AbstractBeanFactory抽象实现分析1、AbstractBeanFactory概览1.1 AliasRegistry接口分析1.2 SingletonBeanRegistry接口分析2、AbstractBeanFactory源码实现2.1 SimpleAliasRegistry源码2.2 DefaultSingletonBeanRegistry源码2.3 FactoryBeanRegistrySupport源码2.4 AbstractBeanFactory源码1、Abs原创 2021-03-03 19:17:54 · 588 阅读 · 0 评论 -
Spring源码分析:BeanFactory体系详解一(接口分析)
Spring源码分析:Bean容器BeanFactory详解BeanFactory接口体系基础BeanFactory层级结构HierarchicalBeanFactoryAutowireCapableBeanFactoryListableBeanFactoryConfigurableBeanFactoryConfigurableListableBeanFactoryApplicationContext层级结构ApplicationContextConfigurableApplicationContextWe原创 2021-02-08 17:24:11 · 686 阅读 · 0 评论 -
Spring容器ApplicationContext概览
Spring容器ApplicationContext概览原创 2021-01-25 14:07:50 · 148 阅读 · 0 评论 -
Spring容器DefaultListableBeanFactory概览
Spring Bean的容器BeanFactory(二)DefaultListableBeanFactory原创 2021-01-12 15:01:02 · 450 阅读 · 2 评论 -
Spring源码分析二:Spring容器BeanFactory概览
Bean容器的始祖BeanFactoryBeanFactory是Spring容器的根接口,具体定义如下:public interface BeanFactory { // 工厂Bean的前缀 String FACTORY_BEAN_PREFIX = "&"; // 按名称获取Bean Object getBean(String name) throws BeansException; <T> T getBean(String name, Class<T> r原创 2020-12-16 17:41:43 · 198 阅读 · 0 评论 -
Spring源码分析一:Spring Bean抽象BeanDefinition
BeanDefinition 介绍BeanDefinition是Bean的抽象表示,包括属性值,构造函数参数值及具体实现提供的更详细的的信息。BeanDefinition是一个最小Bean需要的接口,能够被BeanFactoryPostProcessor用来内审和修改原数据信息。先来看BeanDefinition的源码:public interface BeanDefinition extends AttributeAccessor, BeanMetadataElement { String SCO原创 2020-11-30 21:57:15 · 202 阅读 · 0 评论 -
Spring源码分析之refresh
Spring的refresh概述我们知道Spring容器的refresh是定义在 ConfigurableApplicationContext 中的方法,通过在idea中查看方法的实现,如下图。我们知道,Spring容器的refresh方法的主要实现在AbstractApplicationContext中:Spring的refresh主要实现我们进入AbstractApplicationContext的refresh方法,查看源码如下:@Overridepublic void refresh()原创 2020-11-23 21:42:31 · 279 阅读 · 0 评论 -
Spring Boot使用系列四(启动之前和启动之后)
在前面两篇的文章中我们分析了从Main开始的启动过程和ApplicationContext的刷新过程。1. 这还有一个小小的疑问:main函数都运行为了,为什么spring boot还能够运行呢?针对这个问题,我们转换一下思路,为什么spring boot应用程序还在运行,那是因为jvm还没有推出,那什么情况下jvm会退出呢?我们都知道: System.exit()或Runtime.exit...原创 2020-04-23 16:02:19 · 322 阅读 · 0 评论 -
spring boot使用系列(一)
spring boot使用系列-hello world.本系列文档使用idea,maven来介绍spring boot的使用。本章会有其他使用方式的介绍,读者可以根据自己的需要自行选择。本篇文章是针对初学者。如果已经熟悉请略过,看后续文章。创建Spring bootHello world实现启动Spring boot一、创建spring boot应用1.使用IDEA创建第一步:file->n原创 2017-12-05 16:55:22 · 363 阅读 · 0 评论 -
spring-cloud-gateway系列文章2(限流)
SpringCloudGateway限流的实现spring-cloud-gateway提供了内置的基于Redis,实现令牌桶算法的限流器。1、默认限流的配置在spring-cloud-gateway的系列文章的第一篇中,我们介绍了搭建最小化可用的gateway。本篇文章及后续文章我们都会基于以前的基础继续搭建。最小化可用的spring-cloud-gateway1.1、引入相应jar包在...原创 2020-04-15 14:39:39 · 403 阅读 · 0 评论 -
spring-cloud-gateway系列文章1(最小网关)
基于spring-cloud-gateway搭建最基本的网关第一步:创建maven项目pom.xml<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="h...原创 2020-04-14 14:34:55 · 147 阅读 · 0 评论 -
Spring Boot 使用系列三(ConfigurableApplicationContext的refresh流程)
接上一篇文章spring boot 使用系列二(启动流程)我们对spring boot的SpringApplication的初始化和run方法进行了分析,也对spring boot的启动过程有了整体的了解,但是我们遗留了一个,就是其中的refresh流程。今天我们来分析启动过程中的ConfigurableApplicationContext.refresh()流程,话不多说直接上代码:使用sta...原创 2020-04-23 13:38:10 · 891 阅读 · 0 评论 -
spring boot 使用系列二(启动流程)
在spring boot 使用系列一中我们介绍了最简单使用spring boot的方法。我们看到Spring boot应用的核心启动代码如下:@SpringBootApplicationpublic class BootApplication { public static void main(String[] args) { SpringApplicati...原创 2020-04-23 10:37:17 · 209 阅读 · 0 评论