13|集成框架:框架如何与Spring有机结合?
何辉
你好,我是何辉。上一讲我们纵览了框架在源码中是怎么体现的,今天来学习框架的集成。
如果你开发过以 Spring 框架为基础的应用,就会知道 Dubbo 框架常被当作第三方框架集成到应用中,这也是为什么你会经常看到 Spring 集成 Dubbo 框架、Spring Boot 集成 Dubbo 框架。
然而当 Spring 集成 Dubbo 框架后,为什么你在编写代码时,只用了 @DubboReference 注解就可以调用提供方的服务了呢?就像使用 Spring 的 @Autowired、@Resource 注解一样方便,究竟 Dubbo 框架是怎么与 Spring 无缝结合的呢?带着这个问题,我们开始今天的学习。
一切都要从日常开发过程中编写代码调用远程接口讲起。
现状 integration 层代码编写形式
假设我们正在开发一个已经集成了 Dubbo 框架的消费方系统,你需要编写代码远程调用下游提供方系统,获取业务数据。这是很常见的需求了。
当系统设计的层次比较鲜明,我们一般会把调用下游提供方系统的功能都放在 integration 层,也就意味着当前系统调用下游提供方系统的引用关系都封装在 integration 层。那你的代码可能会这么写:
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
本文深入探讨了Dubbo框架与Spring框架的有机结合,以及改善integration层代码的方法。作者首先介绍了当前integration层代码编写形式,然后提出了如何改善integration层代码的问题,并通过抽象和封装的思路探讨了如何简化integration层的代码编写。文章重点讲解了封装的思路,提出了四种变量因素,并探讨了如何将这些因素抽象成相应对象,以及如何在实现类中调用统一的封装方法。通过具体的代码示例和技术思路,本文深入浅出地介绍了Dubbo框架与Spring框架的有机结合,以及如何改善integration层代码的方法。文章通过注解的方式解决了变化因素的问题,为读者提供了一种简洁、舒适的调用下游提供方接口的方式。文章通过自定义扫描器类和重写Spring框架的方法,实现了对指定注解类的精准扫描,进一步提高了代码的精确性和可控性。同时,通过代理对象的创建和Spring框架的实例化方法,实现了接口的代理对象创建,为读者展示了如何利用Spring框架的特性来简化代码编写。总之,本文通过深入的技术讨论和实际示例,为读者提供了在Dubbo框架与Spring框架集成以及integration层代码改善方面的宝贵经验和指导。
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《Dubbo 源码剖析与实战》,新⼈⾸单¥59
《Dubbo 源码剖析与实战》,新⼈⾸单¥59
立即购买
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
全部留言(2)
- 最新
- 精选
- 胡月🌈感觉和spring集成的框架,feign、mybatis都是这个套路:自定义注解,扫描,动态代理生成目标类。
作者回复: 你好,胡月🌈:是的,你总结的言简意赅,非常nice~这些套路的核心思想是一致的~
2023-01-19归属地:北京5 - 斯瓦辛武Roy你的源码里没看到这一节的代码呢
作者回复: 你好,斯瓦辛武Roy:这个课主要是想让大家深刻了解集成框架的思想,至于对应的Demo代码有兴趣的话,可以去了解这个分支代码的实现:https://gitee.com/ylimhhmily/dubbo-feign-spring-boot-starter-master
2023-01-16归属地:上海31
收起评论