0
点赞
收藏
分享

微信扫一扫

阳哥讲面试题(六)AOP,循环依赖

zhaoxj0217 2022-05-18 阅读 61

AOP

前言

阳哥讲面试题(六)AOP,循环依赖_构造方法

代码示例

阳哥讲面试题(六)AOP,循环依赖_spring_02

阳哥讲面试题(六)AOP,循环依赖_构造方法_03

阳哥讲面试题(六)AOP,循环依赖_spring_04

阳哥讲面试题(六)AOP,循环依赖_spring_05

Spring4+SpringBoot1.5.9

阳哥讲面试题(六)AOP,循环依赖_java_06

阳哥讲面试题(六)AOP,循环依赖_java_07

Spring5+SpringBoot2.3.3

阳哥讲面试题(六)AOP,循环依赖_spring_08

Spring循环依赖

循环依赖是什么

阳哥讲面试题(六)AOP,循环依赖_java_09

阳哥讲面试题(六)AOP,循环依赖_java_10

Spring循环依赖报错演示BeanCurrentlyCreationException

构造方法注入(永远无法避免循环依赖问题)纯JavaSE,没有Spring容器

阳哥讲面试题(六)AOP,循环依赖_构造方法_11

阳哥讲面试题(六)AOP,循环依赖_spring_12

阳哥讲面试题(六)AOP,循环依赖_spring_13

阳哥讲面试题(六)AOP,循环依赖_构造方法_14

阳哥讲面试题(六)AOP,循环依赖_spring_15

Set方法注入(可以解决循环依赖的问题)纯JavaSE,没有Spring容器

阳哥讲面试题(六)AOP,循环依赖_构造方法_16

阳哥讲面试题(六)AOP,循环依赖_构造方法_17

阳哥讲面试题(六)AOP,循环依赖_spring_18

验证Spring容器循环依赖

阳哥讲面试题(六)AOP,循环依赖_构造方法_19

  • singleton(支持循环依赖)
    阳哥讲面试题(六)AOP,循环依赖_spring_20
    阳哥讲面试题(六)AOP,循环依赖_java_21
    阳哥讲面试题(六)AOP,循环依赖_java_22
    阳哥讲面试题(六)AOP,循环依赖_java_23
    阳哥讲面试题(六)AOP,循环依赖_构造方法_24
  • prototype(不支持循环依赖)
    阳哥讲面试题(六)AOP,循环依赖_java_25
    阳哥讲面试题(六)AOP,循环依赖_构造方法_26
    阳哥讲面试题(六)AOP,循环依赖_构造方法_27

Spring内部通过3级缓存解决循环依赖

概述

DefaultSingletonBeanRegistry

阳哥讲面试题(六)AOP,循环依赖_java_28

阳哥讲面试题(六)AOP,循环依赖_java_29

阳哥讲面试题(六)AOP,循环依赖_构造方法_30

阳哥讲面试题(六)AOP,循环依赖_spring_31

阳哥讲面试题(六)AOP,循环依赖_java_32

阳哥讲面试题(六)AOP,循环依赖_spring_33

阳哥讲面试题(六)AOP,循环依赖_spring_34

阳哥讲面试题(六)AOP,循环依赖_java_35

阳哥讲面试题(六)AOP,循环依赖_java_36

Debug源码

阳哥讲面试题(六)AOP,循环依赖_spring_37

阳哥讲面试题(六)AOP,循环依赖_构造方法_38

阳哥讲面试题(六)AOP,循环依赖_构造方法_39

阳哥讲面试题(六)AOP,循环依赖_java_40

refresh打个断点

阳哥讲面试题(六)AOP,循环依赖_spring_41

再次debug

进去refresh方法

阳哥讲面试题(六)AOP,循环依赖_构造方法_42

阳哥讲面试题(六)AOP,循环依赖_构造方法_43

阳哥讲面试题(六)AOP,循环依赖_java_44

阳哥讲面试题(六)AOP,循环依赖_java_45

阳哥讲面试题(六)AOP,循环依赖_构造方法_46

阳哥讲面试题(六)AOP,循环依赖_java_47

阳哥讲面试题(六)AOP,循环依赖_构造方法_48

阳哥讲面试题(六)AOP,循环依赖_构造方法_49

阳哥讲面试题(六)AOP,循环依赖_java_50

阳哥讲面试题(六)AOP,循环依赖_构造方法_51

阳哥讲面试题(六)AOP,循环依赖_java_52

阳哥讲面试题(六)AOP,循环依赖_java_53

阳哥讲面试题(六)AOP,循环依赖_构造方法_54

阳哥讲面试题(六)AOP,循环依赖_java_55

阳哥讲面试题(六)AOP,循环依赖_java_56

阳哥讲面试题(六)AOP,循环依赖_java_57

阳哥讲面试题(六)AOP,循环依赖_spring_58

阳哥讲面试题(六)AOP,循环依赖_spring_59

阳哥讲面试题(六)AOP,循环依赖_java_60

阳哥讲面试题(六)AOP,循环依赖_构造方法_61

阳哥讲面试题(六)AOP,循环依赖_spring_62

阳哥讲面试题(六)AOP,循环依赖_spring_63

阳哥讲面试题(六)AOP,循环依赖_构造方法_64

阳哥讲面试题(六)AOP,循环依赖_java_65

阳哥讲面试题(六)AOP,循环依赖_构造方法_66

阳哥讲面试题(六)AOP,循环依赖_java_67

阳哥讲面试题(六)AOP,循环依赖_spring_68

阳哥讲面试题(六)AOP,循环依赖_构造方法_69

阳哥讲面试题(六)AOP,循环依赖_spring_70

总结

阳哥讲面试题(六)AOP,循环依赖_java_71

阳哥讲面试题(六)AOP,循环依赖_构造方法_72

阳哥讲面试题(六)AOP,循环依赖_spring_73

阳哥讲面试题(六)AOP,循环依赖_构造方法_74

阳哥讲面试题(六)AOP,循环依赖_spring_75

阳哥讲面试题(六)AOP,循环依赖_spring_76

阳哥讲面试题(六)AOP,循环依赖_java_77




举报

相关推荐

0 条评论