
开发
文章平均质量分 95
AyanokoujiMonki
这个作者很懒,什么都没留下…
展开
-
Spring源码学习(五):Spring AOP
方法内部会根据不同通知的类型创建不同类型的beanDefinition,然后设置beanDefinition中的属性值。特殊的是,方法内部还会设置构造器参数: 我们进入到方法内部可以看到,不同通知类型对应着不同类型的class: 从类的继承关系来看,这五个通知类型都继承至 我们先来看看实现了哪些接口,可以看到这些接口在我们Spring初始化启动源码分析时都有讲到过,特别是这个超级接口,我们会回调里面的方法干很多事情。 获取当前bean的自定义目标源。如果获取到了。原创 2024-11-05 20:16:15 · 1413 阅读 · 0 评论 -
Spring源码学习(四):component-scan加载beanDefinition
方法会解析XML文件,将其解析成一个文档树(主要是靠),继续调用的会遍历这个文档树中的节点,对符合条件的节点进行解析,得到BeanDefinition。 所以委托给又进一步委托给。 我们最终得到的beanDefinition是类型的,该类型是的实现类,也是的子类。因此会走那两个if逻辑。1.根据标签的命名空间找到对应的命名空间处理器;2.根据命名空间处理器找到当前标签的解析器;3.创建并配置一个扫描器,加入包含和排除哪些注解;4.找到符合条件的候选Bean;原创 2024-11-02 13:12:46 · 953 阅读 · 0 评论 -
Spring源码学习(三):finishBeanFactoryInitialization
beanFactory在经过一系列配置后可以开始真正的加载Bean,从这篇开始主要是讲述Bean的实例化过程。原创 2024-11-02 12:52:46 · 764 阅读 · 0 评论 -
Spring源码学习(二):prepareBeanFactory准备Bean工厂、回调BeanFactoryPostProcessor、注册BeanPostProcessor
Spring在启动后,方法中容器会注销已有的beans,关闭已有的beanFactory,创建一个新的beanFactory,然后获得所有的Bean定义(基于注解或者基于XML文件)。这一步其实还未实例化任何Bean,只是取得了beanDefinitions,这一篇主要讲解在获得beanDefinitions到真正开始实例化这些beans中间,Spring容器会干的一些事情。是Spring提供的一个扩展接口,Spring中大部分功能都是通过后处理器的方式进行扩展的。原创 2024-11-02 12:35:12 · 1024 阅读 · 0 评论 -
MySQL数据库学习(进阶篇)
mysql原创 2023-05-07 16:13:36 · 1385 阅读 · 1 评论 -
Mysql数据库学习(基础篇)
mysql基础原创 2023-05-07 16:13:31 · 782 阅读 · 0 评论