
Spring源码分析
文章平均质量分 95
围绕Spring Bean的生命周期进行源码分析。
熠熠98
脚踏实地,仰望星空!
欢迎访问博客:lish98.blog.youkuaiyun.com
展开
-
Spring源码分析之 Bean的生命周期、循环依赖
Spring Bean的生命周期1 前置知识什么是Spring Bean,它和Java 对象的区别spring bean是受spring容器管理的对象,可能经过了完整的spring bean生命周期(为什么是可能?难道还有bean是没有经过bean生命周期的?答案是有的,具体我们后面文章分析),最终存在spring容器当中;一个bean一定是个对象。任何符合java语法规则实例化出来的对象,但是一个对象并不一定是spring bean。Spring会根据配置文件或者配置类来生成描述Bean的原创 2022-02-17 14:18:51 · 1152 阅读 · 0 评论 -
Spring之资源定位、加载、解析、注册链路分析
学习路线前置知识Bean&BeanDefinitionBean的本质就是Java对象,知识这个对象的声明周期由容器来管理,不需要为了Bean而在原来Java类上添加任何额外的限制,对Java对象的控制都体现在配置上Spring会根据配置文件或者配置类来生成描述Bean的BeanDefinition,常用属性:@Scope:作用域singletonprototyperequestsessionglobalsession@lazy:懒加载,决定Bean是否延迟加载@P原创 2021-12-13 17:48:35 · 410 阅读 · 0 评论 -
Spring之容器初始化refresh()
一、前置知识1 后置处理器 PostProcessor1.1 BeanDefinitionRegistryPostProcessorBeanDefinitionRegistryPostProcessor,它继承了BeanFactoryPostProcessor 允许在正常的 BeanFactoryPostProcessor检测开始之前注册更多的自定义beandefinitionpublic interface BeanDefinitionRegistryPostProcessor ext原创 2021-12-14 20:17:24 · 198 阅读 · 0 评论 -
Spring之Bean创建流程
1 Bean创建的入口在AbstractApplicationContext的refresh()方法中有this.finishBeanFactoryInitialization(beanFactory);方法该方法中调用了DefaultListableBeanFactory的preInstantiateSingletons()方法,该方法会初始化所有非延时加载的Bean实例preInstantiateSingletons()方法会调用getBean()方法创建出示例if (isEager原创 2021-12-21 15:05:45 · 544 阅读 · 1 评论 -
手写个IoC容器试试?
1 总体思路分析首先来回顾一下Spring的应用public static void main(String[] args) { FileSystemXmlApplicationContext context = new FileSystemXmlApplicationContext("AppConfig.class"); User user = context.getBean("user", User.class); System.out.println原创 2022-02-27 15:34:34 · 295 阅读 · 0 评论 -
SpringBoot2_PART1
文章目录笔记介绍时代背景微服务分布式分布式的困难分布式的解决云原生云原生困难如何学习 SpringBoot官网文档架构笔记介绍时代背景微服务微服务是一种架构风格一个应用拆分为一组小型服务每个服务运行在自己的进程内,也就是可独立部署和升级服务之间使用轻量级HTTP交互服务围绕业务功能拆分可以由全自动部署机制独立部署去中心化,服务自治。服务可以使用不同的语言、不同的存储技术分布式分布式的困难• 远程调用• 服务发现• 负载均衡• 服务容错• 配置管理• 服务监控• 链原创 2022-01-10 21:01:13 · 804 阅读 · 0 评论 -
Zookeeper
1 Zookeeper概述Zookeeper 是 Apache Hadoop 项目下的一个子项目,是一个树形目录服务。Zookeeper 翻译过来就是 动物园管理员,他是用来管 Hadoop(大象)、Hive(蜜蜂)、Pig(小 猪)的管理员。简称zZookeeper 是一个分布式的、开源的分布式应用程序的协调服务。Zookeeper 提供的主要功能包括: 配置管理 分布式锁 集群管理2 Zookeeper 安装2.1 下载安装1、环境准备ZooKeeper原创 2021-07-02 13:48:49 · 833 阅读 · 0 评论