首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
炳臣
掘友等级
Java
|
ZOOM
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
98
文章 97
沸点 1
赞
98
返回
|
搜索文章
最新
热门
Spring Ioc源码分析 之 Bean的加载(五):实例化Bean
实例化Bean的本质其实就是找到一个合适的构造方法,然后通过构造方法调用newInstance()来实例化Bean。 这样看起来实例化Bean的过程很简单,但其实Spring花费了大量经历去寻找合适的构造方法。 这段代码就是实例化Bean的过程。 如果存在 Supplier 回…
Spring Ioc源码分析 之 Bean的加载(四):createBean()
代码读到这里,大家可能有疑问,从代码上看明明是处理的方法重载,但是为什么处理的是方法注入呢?而且如果我们在bean里设置几个方法重载的话,hasMethodOverrides()方法返回的是false。如果我们打开 AbstractBeanDefinition 类的 hasMe…
Spring Ioc源码分析 之 Bean的加载(三):各个 scope 的 Bean 创建
getSingleton(beanName,objectFactory)方法。 在这段代码中,其实主要是做了一些准备和预处理步骤,真正创建Bean是在singletonFactory.getObject()方法实现的,而 singletonFactory 是由createBea…
Spring Ioc源码分析 之 Bean的加载(二)
Spring 只处理单例模式下得循环依赖,对于原型模式的循环依赖直接抛出异常。 Spring会把正在创建的原型模式Bean存入ThreadLoacl,在这里通过ThreadLoacl来判断当前Bean是否已经创建。 这段代码注释很详细,就不多解释了。 在spring中有一个@D…
Spring Ioc源码分析 之 Bean的加载(一)
当我们显示或者隐式地调用 BeanFactory#getBean(String name) 方法时,则会触发加载 Bean 阶段。代码如下: args :创建 Bean 时传递的参数。这个参数仅限于创建 Bean 时使用。 typeCheckOnly :是否为类型检查。 Spr…
Spring IoC 源码分析 (基于注解)(三) 之 Bean的解析与注册
在上一篇文章Spring IoC 源码分析 (基于注解) 之 包扫描中,我们介绍了Spring基于注解扫描包获取bean的过程。本文我们将一起探讨spring对bean解析,并注册到IOC容器的过程。 上篇文章我们主要分析了第10行的 findCandidateComponen…
Spring IoC 源码分析 (基于注解) (二) 之 包扫描
在上篇文章Spring IoC 源码分析 (基于注解) 一我们分析到,我们通过AnnotationConfigApplicationContext类传入一个包路径启动Spring之后,会首先初始化包扫描的过滤规则。那我们今天就来看下包扫描的具体过程。 上文我们分析了this()…
Spring IoC 源码分析 (基于注解) 一
IoC 全称为 Inversion of Control,翻译为 “控制反转”,它还有一个别名为 DI(Dependency Injection),即依赖注入。 Spring为IoC提供了2种方式,一种是基于xml,另一种是基于注解。 标签来定义bean,进行管理。 @Bean…
Spring中配置id或name相同的Bean可能引发的问题及解决方案
如果再xml中配置了相同的的ID或name可能会造成一些问题,今天我们来探讨一下并解决。 1、在同一个xml中配置了相同的bean的id。EX: 2、在不同的xml中配置相同的bean的id。EX: 这种情况下text2.xml中的bean会直接覆盖text1.xml中的bea…
ArrayList源码分析
可以看到,在构造方法中直接将 elementData 指向 DEFAULTCAPACITY_EMPTY_ELEMENTDATA空数组,这个时候该ArrayList的size为初始值0。 参数小于0,则抛异常。 代码中已经有注释了,很清晰。 ail-fast机制是集合中的一种错误…
下一页
个人成就
文章被点赞
204
文章被阅读
80,923
掘力值
1,903
关注了
20
关注者
146
收藏集
11
关注标签
19
加入于
2019-05-10