07 2023 档案
摘要:本文介绍从gitee下载nacos源码,在本地编译,并导入idea进行本地调试。 # 从gitee下载源码 由于github访问速度慢,所以我选择使用gitee的镜像仓库: ```shell git clone https://gitee.com/mirrors/Nacos.git ``` 本文使用
阅读全文
摘要:SpringMVC的启动入口在SpringServletContainerInitializer类,它是ServletContainerInitializer实现类(Servlet3.0新特性)。在实现方法中使用WebApplicationInitializer创建ApplicationContex
阅读全文
摘要:# 构造方法参数Autowire - BeanClass可以在构造方法上标注@Autowired注解,Spring在创建Bean实例时将自动为其注入依赖参数 - Spring会优先使用标注@Autowired注解的构造方法 - 当一个构造方法标注了@Autowired注解且required=true
阅读全文
摘要:# FactoryBean接口 实现类对象将被用作创建Bean实例的工厂,即调用getObject()方法返回的对象才是真正要使用的Bean实例,而不是直接将FactoryBean对象作为暴露的Bean实例。 FactoryBeans可以支持singleton和prototype,并且可以根据需要懒
阅读全文
摘要:BeanDefinition在Spring初始化阶段保存Bean的元数据信息,包括Class名称、Scope、构造方法参数、属性值等信息,本文将介绍一下BeanDefinition接口、重要的实现类,以及在Spring中的使用示例。 # BeanDefinition接口 用于描述了一个Bean实例,
阅读全文
摘要:本文通过阅读Spring源码,分析Bean实例化流程。 # Bean实例化入口 上一篇文章已经介绍,Bean实例化入口在AbstractApplicationContext类的finishBeanFactoryInitialization方法: ```java protected void fini
阅读全文