摘要:
ThreadLocal很容易让人望文生义,认为是一个本地线程,其实不然,ThreadLocal是Thread的一个局部变量,TheradLocal本身是一个类,是用于解决多线程并发访问问题。它为每一个线程提供了变量副本,使得每个线程在同一时刻访问到的并非同一个对象,从而隔离了多个线程对数据的共享。 阅读全文
posted @ 2021-08-01 21:48
福福猿
阅读(176)
评论(0)
推荐(0)
摘要:
如果我们想要在spring容器加载完成时,做一些什么操作,就可以通过事件的监听来完成,由上篇文章知道spring在容器加载完成时会发布一个ContextRefreshedEvent事件,那么我们只要去监听 这个事件即可。 创建一个类实现ApplicationListener接口 测试 我们也可以自定 阅读全文
posted @ 2021-08-01 20:18
福福猿
阅读(64)
评论(0)
推荐(0)
摘要:
前面讲了往事件管理类中注册事件,那么事件的监听什么时候被触发呢?在事件发布的时候,发布事件时会获取到事件管理类中所有的事件,去循环广播,然后调用事件监听类的onApplicationEvent()方法。在容器加载完成的时候,spring会发布一个ContextRefreshdEvent。 1.ref 阅读全文
posted @ 2021-08-01 19:49
福福猿
阅读(94)
评论(0)
推荐(0)
摘要:
在refresh()方法中有一个registerListeners()方法,该方法主要完成往事件管理类中注册事件。 1.refresh()方法中的registerListeners()方法 2.进入registerListeneres()方法 阅读全文
posted @ 2021-08-01 16:55
福福猿
阅读(209)
评论(0)
推荐(0)
摘要:
在spring容器加载核心方法refresh()方法中有一个initApplicationEventMulticaster()方法,该方法主要完成事件管理类的初始化,并加入一级缓存。 1.refresh()方法中的initApplicationEventMulticaster()方法 2.进入ini 阅读全文
posted @ 2021-08-01 16:52
福福猿
阅读(171)
评论(0)
推荐(0)
摘要:
第5篇我们讲了invokeBeanFactoryPostProcessors()方法,我们接着spring容器加载refresh()核心方法往下走,今天来看registerBeanPostProcessor()方法 1.refresh()中的registerBeanPostProcessor()方法 阅读全文
posted @ 2021-08-01 16:18
福福猿
阅读(72)
评论(0)
推荐(0)
摘要:
上篇文章讲了容器加载过程中会对实现了BeanDefinitionRegistyPostProcessor接口的调用,现在讲一下BeanDefinitionRegistyPostProcessor接口具体的应用,主要是对BeanDefinition的进行增删改操作。 1.创建一个类不加任何注解,也不在 阅读全文
posted @ 2021-08-01 16:08
福福猿
阅读(82)
评论(0)
推荐(0)
摘要:
前两篇文章讲了obtainFreshBeanFactory()方法,该方法主要是进行xml解析并封装成BeanDefinition,今天我们接着refresh()核心方法往下看invokeBeanFactoryPostProcessor()方法,该方法主要完成对实现了BeanDefinitionRe 阅读全文
posted @ 2021-08-01 15:21
福福猿
阅读(106)
评论(0)
推荐(0)
浙公网安备 33010602011771号