zoukankan      html  css  js  c++  java
  • 讲讲spring流程

    周末学习总结,讲讲spring流程,欢迎指正。

    1.创建spring容器,包扫描,xml配置和注解,得到bean定义。注册到bean定义map
    2.注册,执行bean工厂回调方法。此时可以扩展拿到bean定义,进行修改。
    3.实例化对象,通过构造方法,反射。
    4.能提前暴露的对象,加入bean工厂map
    5.属性填充,处理循环依赖。
    6.初始化对象。包含bean回调前置方法,init方法,bean回调后置方法。
    7.初始化完成放入单例池。

    其中Aop是在bean回调后置方法,把原来的bean替换成了代理对象。此时存在单例池的,就是一个代理对象。

    Aop用到了jdk动态代理Proxy和cglib 代码生成依赖。
    jdk动态代理,只能代理接口。
    cglib底层是ASM框架,原理是通过创建一个类继承原有的类,再扩展被代理方法。

  • 相关阅读:
    离线缓存之RNCachingURLProtocol解析
    Element demo解析
    GHUnit+OCMock
    XCTest+XCTool
    day1`4整理
    day4 笔记
    day3
    day1
    day2
    Python学习(二)——Python基础
  • 原文地址:https://www.cnblogs.com/itbac/p/13983685.html
Copyright © 2011-2022 走看看