一、引入dubbo相关包
在game子模块pom.xml加入相关maven包
因为dubbo和zkclient的日志默认使用的是log4j,与我们系统使用的logback不一致, dubbo使用的spring2.5.6与我们系统使用的sping4也不一致,所以需要去掉他们默认的,改成我们自己系统一致的。
二、将原来的game-service模块拆分成game-service和game-provider两个子模块
原game-service子模块中service所有接口类放入新game-service子模块中,原game-service子模块中service.impl和component等包放入game-provider子模块中
修改后的game-service作为接口的定义,game-provider作为提供者实现接口。
项目拆分之后消费者模块需要修改成只引入game-service子模块
三、服务提供者实现
1、在game-provider子模块pom.xml引入game-service子模块和原game-service项目maven包
2、在game-provider子模块src/main/resource下创建 dubbo_provider.properties 文件
dubbo_provider.properties
3、创建Dubbo提供者配置类
DubboProviderConfig.java
4、修改接口实现类的@Service注解为@com.alibaba.dubbo.config.annotation.Service(version = "1.0.0")
5、将game-model子模块中除protocol buffer相关类之外的类实现java.io.Serializable接口
6、创建服