-
Spring AOP基于XML方式笔记整理
XML AOP 加载流程
- ClassPathXmlApplicationContext#refresh
- AbstractApplicationContext#obtainFreshBeanFactory
- AbstractRefreshableApplicationContext#refreshBeanFactory
- 创建DefaultListableBeanFactory
- AbstractApplicationContext#loadBeanDefinitions(beanFactory)
- 创建XmlBeanDefinitionReader(beanFactory)
- AbstractApplicationContext#loadBeanDefinitions(beanDefinitionReader)
- AbstractBeanDefinitionReader#loadBeanDefinitions(locations)
- XmlBeanDefinitionReader#loadBeanDefinitions(encodedResource)
- XmlBeanDefinitionReader#doLoadBeanDefinitions(inputSource, resource)
- XmlBeanDefinitionReader#registerBeanDefinitions(doc, resource)
- 创建DefaultBeanDefinitionDocumentReader对象
- DefaultBeanDefinitionDocumentReader#registerBeanDefinitions(doc, readerContext)
- DefaultBeanDefinitionDocumentReader#doRegisterBeanDefinitions(element)
- DefaultBeanDefinitionDocumentReader#parseBeanDefinitions(element, delegate)
- 解析默认标签:DefaultBeanDefinitionDocumentReader#parseDefaultElement
- 解析非默认标签:BeanDefinitionParserDelegate#parseCustomElement(ele)
解析非默认标签
- 通过element获取namespaceUri
- 从readerContext中获取NamespaceHandler: DefaultNamespaceHandlerResolver
- DefaultNamespaceHandlerResolver#resolve(namespaceUri)
- 从META-INF/spring.handlers中加载所有的handlerMapping并根据namespaceUri获取匹配的值
- 实例化AopNamespaceHandler并调用init进行初始化,并返回实例对象
- NamespaceHandlerSupport#parse(element, parserContext) 解析标签beanDefinition信息
- 根据标签获取AopNamespaceHandler中注册的BeanDefinitionParser
- ConfigBeanDefinitionParser#parse(element, parserContext)解析pointcut, advisor, aspect信息
-
相关阅读:
Word处理控件Aspose.Words功能演示:在 Java 中将 Word 文档转换为 EPUB
部署基于docker和cri-dockerd的Kubernetes v1.25.3
Vue组件的渲染更新原理知识大连串
mathtype在word内的简单使用
【控制】自适应控制,模型参考自适应控制,参考模型如何求取,有程序有图
Nginx代理websocket配置(解决websocket异常断开连接tcp连接不断问题)
SPI:Java的高可扩展利器
android studio启动虚拟器失败
大模型的人工智能能否超越人类?
Wide&Deep论文翻译
-
原文地址:https://blog.csdn.net/yichengjie_c/article/details/134180421