Spirng 痛苦源码学习(三)——Spring中的几个核心老大


前言

  • 一开始学习spring我们首先还是要搞清楚他的整体架构,就是他是干嘛的,里面是怎么跑的(读资源到bean工厂=》创建bean定义=》按照bean定义造bean=》放到池中使用)
    Spirng 痛苦源码学习(一)——总起spring(一)
    在这里插入图片描述
  • 擒贼先擒王,认识里面几个重要的类和接口
    • 基础接口
      Resource+ResourceLoader
      BeanFactory IOC容器的顶层接口,只是其中的一个功能
      BeanDefinition bean定义信息
      BeanDefinitionReader bean定义读取
      BeanDefinitionRegistry bean定义注册
      SingletonBeanRegistry ·单例bean注册
      ApplicationContext 是BeanFactory的子类
      Aware 各种Aware接口

    • 生命周期-后置处理器
      BeanFactoryPostProcessor
      InitializingBean
      BeanPostProcessor


一、基础接口

spring中的一些主脉络,这也是设计模式中的依赖倒置原则,面向接口编程

1.Resource

ctrl+F12看方法,ctrl+H看实现类

资源可以看到我的资源可以来着很多地方。web项目下的指定路径,网络,流。。。
在这里插入图片描述
在这里插入图片描述


2.ResourceLoader

资源加载接口,策略接口
在这里插入图片描述

===》策略模式UML类图

策略模式就是抽象出行为和主体。
例子:一个人怎么去北京。人就是主体,那么交通方式就是行为方式,就可以抽象一个交通方式的接口,然后聚合到行为主体中,传入具体的子类来完成不同的策略。
那么spring的资源加载也是如此,怎么读资源就是一种行为
在这里插入图片描述

ctrl H 看一下继承
在这里插入图片描述
===》策略环境持有者(IOC容器持有)
在这里插入图片描述

3.BeanFactory

(1)总览

在spring 的整体架构流程图中,我们可以知道Spring就是在Bean工厂造东西的过程。
同时通过该注释我们也可以看到这是一个根接口,是Spring容器的入口
在这里插入图片描述

(2)继承如下

在这里插入图片描述

  • HierarchicalBeanFactory:定义父子工厂(父子容器)
  • ListableBeanFacotory:的实现是DefaultListableBeanFactory,保存了ioc容器中的核心信息
  • AutowireCapableBeanFactory:提供自动装配能力

(3)重要的工厂

缓存了各种信息,bean定义信息,bean信息等核心信息
在这里插入图片描述

4. ApplicationContext

在这里插入图片描述
在这里插入图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值