zoukankan      html  css  js  c++  java
  • spring2

    spring源码解析

    bean的解析及注册

    XmlBeanFactory.XmlBeanFactory(Resource resource,BeanFactory parentBeanFactory)

    XmlBeanDefinitionReader.loadBeadDefinitions(Resource resource)

    XmlBeanDefinitionReader.loadBeadDefinitions(EncodedResource encodedResource )

    XmlBeanDefinitionReader.doLoadBeadDefinitions(InputSource inputSource,Resource resource)

    XmlBeanDefinitionReader.registerBeanDefinitions(Document doc,Resource resource)

    DefaultBeanDefinitionDocumentReader.registerBeanDefinitions(Document doc,XmlReaderContext readerContext)

    DefaultBeanDefinitionDocumentReader.doRegisterBeanDefinitions(Element root)

    DefaultBeanDefinitionDocumentReader.parseBeanDefinitions(Element root, BeanDefinitionParserDelegate delegate)

    DefaultBeanDefinitionDocumentReader.parseDefaultElement(Element ele, BeanDefinitionParserDelegate delegate)

    DefaultBeanDefinitionDocumentReader.processBeanDefinition(Element ele, BeanDefinitionParserDelegate delegate)

    BeanDefinitionParserDelegate.parseBeanDefinitionElement(Element ele)

    BeanDefinitionParserDelegate.parseBeanDefinitionElement(Element ele,@Nullable BeanDefinition ...)

    BeanDefinitionParserDelegate.parseBeanDefinitionElement(Element ele,String beanName,@Nullable BeanDefinition containingBean)

    创建bean对象(getBean流程)

    AbstractBeanFactory.getBean(String name)

    AbstractBeanFactory.doGetBean(String name,Class<T> requiredType...)

    DefaultSingletonBeanRegirstry.getSingleton(String beanName)

    DefaultSingletonBeanRegirstry.getSingleton(String beanName,ObjectBeanFactory<?> singletonFactory)

    AbstractAutowireCapableBeanFactory.createBean(String beanName,RootBeanDefinition mbd,Object args)

     

    1.创建bean对象

    AbstractAutowireCapableBeanFactory.doCreateBean(String beanName,RootBeanDefinition mbd,Object args)

    AbstractAutowireCapableBeanFactory.createBeanInstance(String beanName,RootBeanDefinition mbd,Object args)

    instantiateBean(String beanName,RootBeanDefinition mbd)

    2.填充bean的属性

    3.初始化bean(init方法)

     

     

     

     

     

  • 相关阅读:
    兄弟连,一般人来不起,来的肯定不是一般人!
    50天之脱变,66期第一个项目感受。切记平常心
    2016十大影响事件
    为什么要写年终总结
    20161228阅读笔记
    为什么要认识牛人
    李笑来:演讲能力是我这一生有幸学到的最重要能力
    张辉:工作几年就应该给自己“清零”
    小马宋:目标决定方法~坚持目标而不是方法
    李笑来的财务自由法~把一份时间卖出很多份
  • 原文地址:https://www.cnblogs.com/BonnieWss/p/12853289.html
Copyright © 2011-2022 走看看