
Spring Framework
文章平均质量分 95
6.0.11
纸杯没茶
这个作者很懒,什么都没留下…
展开
-
Spring-IOC之组件扫描
通过自动扫描,Spring 会自动从扫描指定的包及其子包下的所有类,并根据类上的特定注解将该类装配到容器中,而无需在 XML 配置文件或 Java 配置类中逐一声明每一个 Bean。支持的注解Spring 支持一系列注解,用于标记哪些类应被自动扫描并作为 Bean 管理。@Component:基础注解,标记一个类作为 Spring 组件。所有其他特殊用途的组件注解都继承自此注解。原创 2024-04-23 14:38:51 · 1197 阅读 · 1 评论 -
Spring-bean的循环依赖
Spring的循环依赖是指在Spring管理的Bean之间存在互相引用的情况,即两个或多个Bean相互依赖,形成闭环,陷入无限递归或无法完成初始化的状态。原创 2024-04-15 15:37:29 · 640 阅读 · 1 评论 -
Spring-bean的生命周期
版本 Spring Framework 6.0.9。原创 2024-04-10 10:37:32 · 1073 阅读 · 2 评论 -
Spring源码-IOC之createBean
版本 Spring Framework 6.0.9。原创 2024-04-03 22:23:19 · 706 阅读 · 2 评论 -
Spring源码-IOC之resolveBeanClass
bean定义的beanClass属性不为空并且是class类型直接返回。如果存在类型匹配参数(typesToMatch),将动态加载器替换为临时类加载器,并标记为“freshResolve”(表示本次解析为新的或临时的)。从RootBeanDefinition (mbd) 中获取Bean的类名称(className),如果类名称包含表达式(如前缀为#{},后缀为}),则对其进行动态解析。如果解析后的类名称与原始类名称不同,则根据解析结果加载对应的类。若解析结果为一个Class对象,则直接返回;原创 2024-04-01 15:22:36 · 1046 阅读 · 0 评论 -
Spring源码-IOC之getBean
版本 Spring Framework 6.0.9。原创 2024-03-27 10:28:35 · 807 阅读 · 0 评论 -
Spring源码-BeanDefinition
AbstractBeanDefinition抽象类是BeanDefinition 接口的具体实现类。除了包含BeanDefinition接口的配置信息,还添加了其他配置信息,主要补充bean的行为特征。// 可能是bean名称,也可能是bean类型// 自动装配模式// 依赖检查方式// 是否具有指定的限定符// 用于创建 Bean 实例的回调// 是否允许访问非公共构造函数和方法// 宽松模式(true)下还是严格模式下解析构造函数// 有关 IoC 容器要重写的方法的信息。原创 2024-03-20 14:40:56 · 1981 阅读 · 1 评论 -
Spring源码-IOC之ClassPathXmlApplicationContext#refresh
了解过refresh大致流程后,紧接着上一篇文章,继续浅析下ClassPathXmlApplicationContext实例化过程的第三部分refresh()。// 创建ioc容器// 调用基类AbstractApplicationContext构造方法,创建资源路径解析器,默认值是ResourcePatternResolver// 设置上下文的配置路径// 调用父类AbstractApplicationContext的refresh方法refresh();// 省略其他代码...原创 2024-03-05 22:36:45 · 977 阅读 · 1 评论 -
Spring源码-IOC之AbstractApplicationContext#refresh
refresh是接口ConfigurableApplicationContext的方法,定义:加载或刷新配置的持久层表示,可能是Java Config类、XML文件、properties文件或关系型数据库模式。接口ConfigurableApplicationContext的子类AbstractApplicationContext对refresh方法做了基本实现,方法体由一系列方法调用组成蓝色为准备环境;绿色为创建、初始化bean工厂,并用工厂实例化bean;黄色为上下文初始化一些特有的功能。原创 2024-02-29 14:17:09 · 1060 阅读 · 0 评论 -
Spring源码-IOC之ClassPathXmlApplicationContext
实例化PathMatchingResourcePatternResolver,给属性resourcePatternResolver赋值给属性parent赋值,当父环境不为空是,合并父子环境获取环境,当环境为空时创建环境并初始化,给上下文属性environment赋值解析资源路径,如果存在占位符,则获取占位符的关联值,给上下文属性configLocations赋值无参考Spring核心讲解篇——ApplicationContext - 知乎 (zhihu.com)原创 2024-01-09 00:01:47 · 1433 阅读 · 0 评论