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方法)

     

     

     

     

     

  • 相关阅读:
    Eclipse 导入项目乱码问题(中文乱码)
    sql中视图视图的作用
    Java基础-super关键字与this关键字
    Android LayoutInflater.inflate(int resource, ViewGroup root, boolean attachToRoot)的参数理解
    Android View和ViewGroup
    工厂方法模式(java 设计模式)
    设计模式(java) 单例模式 单例类
    eclipse乱码解决方法
    No resource found that matches the given name 'Theme.AppCompat.Light 的完美解决方案
    【转】使用 Eclipse 调试 Java 程序的 10 个技巧
  • 原文地址:https://www.cnblogs.com/BonnieWss/p/12853289.html
Copyright © 2011-2022 走看看