![](https://img-blog.csdnimg.cn/20190918140053667.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
spring
文章平均质量分 95
https://github.com/spring-projects/spring-framework
spring framework的相关原理分析
ShineMoer
这个作者很懒,什么都没留下…
展开
-
Spring系列(四) 循环依赖那些事
随着我们代码中更多服务的出现与依赖关系的耦合,bean与bean之间的交互往往会涉及很多对其他类的依赖。我们通常用简单的Autowired、提供对应依赖对象的setter方法以及构造器中传入需要引用的其他对象,spring就可以完美的做好依赖关系自动装配。那么本节就来分析下spring中是如何完成bean之间这些依赖的自动查找与注入关于这个话题,最重要的是spring中用到的三级缓存。但spring中的循环依赖情况分很多种,会进行不同场景的依次分析。本片先介绍最简单的单例对象间的注解依赖方式包括字段上.原创 2021-08-22 14:51:08 · 261 阅读 · 1 评论 -
Dubbo系列(二)服务发布注册原理
前言DubboBootstrapApplicationListener extends OnceApplicationContextEventListener只触发一次容器事件监听的执行避免事件传播,适合用于容器初始化完成和关闭等。@SPI(DirectEventDispatcher.NAME)EventDispatcher默认采用DirectEventDispatcher实现类发布事件,直接使用单线程Executor DIRECT_EXECUTOR = Runnable::runEventL原创 2021-07-31 22:09:55 · 1687 阅读 · 0 评论 -
Spring系列(三) 从refresh看createBean源码解析
createBean解析spring当中单例bean的创建原理,其中涉及到了非常多阶段及各种处理器的调用启动代码通过注解配置类AppConfig启动一个容器,其中添加了一个自定义的beanFactoryPostProcessor, 注意:这个类是直接添加到beanFactoryPostProcessors中的,没有被spring当成bean放到单例map中 AnnotationConfigApplicationContext ac = new AnnotationConfigApplicationC原创 2021-06-28 20:19:11 · 192 阅读 · 0 评论 -
Spring IOC笔记之Autowire 注入方式
Spring IOC 一些常见容易忽略的问题,包括autowire/resource 注入,类型定义,循环依赖等,会后续不断补充。Autowire注入五种模式1.no默认,如果没找到在调用依赖对象时会抛NullPointerException2.byType根据bean class类型在容器中找到唯一一个对应的给目标对象注入当所注入的类型在容器中只有唯一对象时,较为简单不需要关注属性名或setter方法,以下分析多实现情况场景1 annotation @Autowired example:D原创 2020-06-26 20:12:38 · 1030 阅读 · 0 评论 -
Spring系列(二) AnnotationConfigApplicationContext
AnnotationConfigApplicationContext创建一个AnnotationConfigApplicationContext的方式及区别构造传入注解配置类,一步式解析 扫描 创建spring 容器AnnotationConfigApplicationContext context =new AnnotationConfigApplicationContext(AopConfig.class); 如果有自定义的BeanDefinitionRegistryPost原创 2020-05-09 20:03:07 · 1045 阅读 · 0 评论 -
spring系列(一)基本组件
spring系列(一)基本组件类级别注解@Component:通用注解组件,可被继承扩展为不同层次使用的专用组件.当某一个类在不属于其他典型层次中可作为选择使用@Controller: 控制层,所注解的为Controller类型与最前端用户数据交互,在web 中广泛与RequestMapping等结合使用@Service: 服务层,所注解的为一般业务类(如xxxServiceI...原创 2020-03-22 17:45:48 · 312 阅读 · 0 评论