首页 > 其他 > 详细

Dubbo学习-4-dubbo简单案例-1

时间:2019-07-14 00:54:34      阅读:129      评论:0      收藏:0      [点我收藏+]

模拟一个需求,通过dubbo实现RPC调用:

技术分享图片

这里用户服务模块的查询用户地址的功能,就是一个服务提供者,而订单服务模块的创建订单模块就是一个服务消费者;

1. 创建服务提供者的maven工程:user-service-provider

技术分享图片

技术分享图片

  技术分享图片 创建一个UserService接口及接口的实现类

2.创建服务消费者的maven工程:order-service-consumer 

 技术分享图片

 技术分享图片

order-service里面创建一个OrderService接口及其实现,实现类中,调用UserService提供的服务。那么问题来了,这个仅仅是示例工程,真实的工程中,不止一个工程会调用UserService接口,要使用UserService的接口中的方法, 必须把接口和相关javaBean也得加到使用到的工程中,这样一来就有很多重复代码,这时,就需要把公共的接口和java Bean都提取到一个公共的maven工程中,因此,将UserService接口及其使用到的javaBean  UserAddress类和OrderService接口全部放到一个新的maven工程中,

 dubbo官网的服务化最佳实践中也推荐分包:

技术分享图片

 

3.创建公共接口的maven工程

创建过程同上,Artifact Id 设置为test-interface;将UserService接口及其使用到的javaBean  UserAddress类和OrderService接口全部放到这个maven工程中,原来工程中的对应接口文件和Bean进行删除,同时,user-service-provider工程和order-service-consumer工程都需要引入test-interface工程的依赖:

技术分享图片

这时,三个工程的结构如下:OrderService接口和UserService接口的定义以及javaBean的定义都放在了test-interface工程中,user-service-provider工程和order-service-consumer工程里面只写接口的实现。

技术分享图片

此时,在OrderService中的实现类里面,调用userService的方法,是报错的,因为此时只有通过远程过程调用才能使用userService接口的实现类的方法。

技术分享图片

 

Dubbo学习-4-dubbo简单案例-1

原文:https://www.cnblogs.com/enjoyjava/p/11182795.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!