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

     

     

     

     

     

  • 相关阅读:
    去掉字符串中的空格
    在线工具和云服务推荐
    Tomcat 8080端口被占用解决方法
    MySQL 相关总结
    去除Jsp页面空白行
    linux 常用命令
    最近面试Android的一些面试题
    Android动态加载Activity原理
    Android动态资源加载原理和应用
    利用DexClassLoader动态加载dex文件
  • 原文地址:https://www.cnblogs.com/BonnieWss/p/12853289.html
Copyright © 2011-2022 走看看