dubbo和spring的整合

本章先简单写下dubbo在启动时是怎么同时整合spring容器的
首先dubbo的启动是在:org.apache.dubbo.container.Main#main
在这里插入图片描述
可以看到main方法中首先是肯定没有入参的,所以会去加载

public static final String CONTAINER_KEY = "dubbo.container";

这个key对应的配置,然后在dubbo的2.7.8版本中没有这个配置,所以他会使用LOADER.getDefaultExtensionName()的默认值,那么LOADER这个东西其实就是前面分析SPI的时候了解过的,其实是org.apache.dubbo.container.Container的扩展类,那么LOADER.getDefaultExtensionName()肯定就是Container上面的注解@SPI("spring")的默认值spring了,这个不理解的可以去看看前面讲的dubbo的SPI
那么最终获取的config值其实就是spring,那么在下面LOADER.getExtension(args[i])这个代码执行的结果肯定就是Container接口的spring实现了,其实就是:在这里插入图片描述
那么找到这个实现之后就很明显了,回到Main方法里面,在后面很明显的调用了container.start(),其实就是调用的org.apache.dubbo.container.spring.SpringContainer#start,这里就是dubbo整合spring的开始,这里的其实就是spring容器启动的相关知识了,可以去看我以前的一篇spring容器启动的文章,实际就是spring容器的启动

本篇先写到这 其他的后面再补

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值