spring
了解spring,深入spring
层巅余落日
莫道君行早,
更有早行人。
展开
-
16-入坑:实现了SmartInitializingSingleton却不执行
SmartInitializingSingleton是spring的扩展点之一,主要用于在Spring容器启动完成时进行扩展操作,即afterSingletonsInstantiated()。接口的bean的作用域必须是单例,afterSingletonsInstantiated()才会触发。问题代码:代码中实现了spring提供的SmartInitializingSingleton接口,并实现了afterSingletonsInstantiated方法,但是却不执行。原创 2024-04-24 11:45:05 · 904 阅读 · 0 评论 -
15-事件
Bean// 配置自定义的事件发送器// GenericApplicationListener具备判断事件类型的能力// 收集事件监听器@OverrideSystem.out.println("当前事件监听器为:" + applicationListener + ", 能够处理的事件类型为:" + interfaceEventType);// 对事件进行包装 添加事件类型判断@Override// 是否支持某时间类型 eventType为当前的事件类型@Override。原创 2024-04-23 14:50:34 · 191 阅读 · 0 评论 -
14-@Autowired处理
【代码】14-@Autowired处理。原创 2024-04-22 21:47:22 · 574 阅读 · 0 评论 -
13-@Value解析
【代码】13-@Value解析。原创 2024-04-22 21:46:51 · 249 阅读 · 0 评论 -
12-spring代理
【代码】12-spring代理。原创 2024-04-19 14:27:10 · 119 阅读 · 1 评论 -
11-FactoryBean
如果存在当前bean的FactoryBean, spring认为诸如依赖注入、初始化、Aware等这些生命阶段都应该有FactoryBean种处理, 所以即使这里配置了都不会生效。原创 2024-04-18 21:00:47 · 264 阅读 · 0 评论 -
10-循环依赖
总结下 Spring 解决循环依赖的思路:在创建单例 Bean 时,会把该 Bean 的工厂函数的匿名类对象放入三级缓存中的 singletonFactories 中。然后在填充属性时,如果出现循环依赖依赖本 Bean,必然执行之前放入的工厂函数的匿名实现,如果该 Bean 无需 AOP 的话,工厂函数返回的就是原 Bean 对象;如果该 Bean有 AOP 的话,也有可能是被某些 BBP 处理 AOP 之后的代理对象,会放入二级缓存中的 earlySingletonObjects 中。原创 2024-04-18 13:53:10 · 524 阅读 · 0 评论 -
09-AOP
实例化 -> () -> 依赖注入 -> 初始化 -> (初始化之后:没有循环依赖实例化后,依赖注入之前(有循环依赖) 暂存于二级缓存依赖注入和初始化不应该被增强,即还是原对象调用。原创 2024-04-17 13:35:54 · 572 阅读 · 0 评论 -
08-动态代理
【代码】08-动态代理。原创 2024-04-16 14:53:04 · 300 阅读 · 0 评论 -
07-Bean的作用域
我们用的最多的就是单例singleton了,这个就不再描述。原创 2024-04-14 21:16:00 · 354 阅读 · 0 评论 -
06-Bean生命周期
【代码】06-Bean生命周期。原创 2024-04-12 17:54:51 · 230 阅读 · 0 评论 -
05-Spring内置接口
测试。原创 2024-04-11 11:46:49 · 119 阅读 · 1 评论 -
04-BeanPostProcessor
【代码】04-BeanPostProcessor。原创 2024-04-10 15:57:37 · 264 阅读 · 0 评论 -
03-BeanFactoryPostProcessor
Override// 正规写法应该获取所有@Configuration的类@Override测试@Override// 方法参数值注入// 一般@Bean的bean名字都是取方法名@Override测试@Override/*** 这里BeanName不能使用mapperFactoryBeanDefinition* 因为同名Bean会被覆盖。原创 2024-04-09 14:34:27 · 396 阅读 · 0 评论 -
02-ApplicationContext
Data--相当于 AnnotationConfigUtils.registerAnnotationConfigProcessors(beanFactory);此功能加载一些内置后处理器--> <!--相当于 AnnotationConfigUtils.registerAnnotationConfigProcessors(beanFactory);此功能加载一些内置后处理器--> <!--原创 2024-04-08 13:14:35 · 387 阅读 · 0 评论 -
01-BeanFactory
介绍BeanFactory原创 2024-04-03 15:34:41 · 191 阅读 · 0 评论