公司或者企业有很多的服务,这些服务有不同的部门,不同的人员管理,维护。例如公司做生活服务类业务的,提供类似 58 同城的业务。其中公共服务部门负责提供天气资讯和影视资讯两个内容。A 小组两个人负责天气资讯;B 小组三个人负责影视资讯。现在需要在公司的网站同时提供两种资讯。你作为网站开发人员需要使用 A 和 B 两个小组不同服务内容。使用 A 组,B 组的两个服务提供者接口。
图一:
公司使用 Dubbo 管理服务,A 组,B 组分别各自服务的接口的 jar 包。比如 A-Weather.jar , B-Movie.jar . 网站的开发人员需要同时维护两个 jar。任何一个有改动,都需要做调整代码。
图二:
现在只要使用公共服务部门提供的一个服务接口 jar 包就可以了。
A、新建 Java Project 项目:05-ProviderInteface
Java 项目,只定义接口,无需导入 jar。
B、 新建天气信息的数据类 Weatche
重写的 toString()
C、 新建天气服务接
D、新建影视信息的数据类 Movie
重新 toString()
E、 新建影视服务接口
F、 导出包含所有接口的
导出 jar,选择 eclipse 菜单 File ---- >
G、查看导出的 jar 内
A、新建 web 工程 05-ProviderInterfaceImpl,生成 web.xml
项目结构:
B、 导入 dubbo,spring,服务接口的 jar
C、 新建实现 WeatherService 接口的实现类
D、新建实现 MovieService 接口的实现类
E、 新建 spring 配置文件 dubbo-provider.xml
F、 修改 web.xml,增加 ContextLoaderListener 监听器
A、新建 Java Project:05-ConsumeService
项目结构:
B、 导入 dubbo,spring,服务提供者接口 jar
C、 新建 spring 配置文件 dubbo-consume.xml
D、定义访问服务的测试类