Springboot源码系列
文章平均质量分 74
tanglihai
这是一个JAVA开发者
展开
-
Spring在监听器中用到的适配器模式
广播器AbstractApplicationEventMulticaster 的方法retrieveApplicationListeners获取监听器时,会通过supportsEvent(listener, eventType, sourceType)方法筛选出支持相应事件类型的监听器,如下。 protected boolean supportsEvent(ApplicationListener<?> listener, ResolvableType eventType, Class<原创 2021-12-29 20:45:00 · 427 阅读 · 0 评论 -
Spring-Boot和Spring的监听器模式
最近阅读SpringBoot的源码,发现一个奇怪的现象,项目中有两处地方具有发布事件功能,一个是SpringApplicationRunListener接口;另一个是ApplicationEventPublisher接口的publishEvent方法,ApplicationContext接口实现了该接口。先讲结论。经过仔细分析,发现SpringApplicationRunListener接口是属于SpringBoot包下的,该接口用于发布SpringBoot相关流程的事件;而ApplicationE原创 2021-12-22 21:01:26 · 563 阅读 · 0 评论 -
SpringBoot源码阅读之AnnotationConfigApplicationContext类分析
1.通过SpringApplication.run方法进入查看源码,会发现代码中下面的这段代码创建了IOC容器。context = createApplicationContext();跟进去找到下面这段代码,spring boot找到了AnnotationConfigApplicationContext类的Class信息,并且实例化然后返回。contextClass = Class.forName(this.webEnvironment ? DEFAULT_WEB_CONTEXT_CLAS原创 2021-06-07 01:40:34 · 1146 阅读 · 1 评论