一、在配置Dubbo之前需要在服務器上部署Zookeeper註冊器。
配置Zookeeper可以參考網址:https://blog.csdn.net/qq_33556350/article/details/86377445
二、配置服務提供者
pom.xml添加依賴
<!-- dubbo相關 -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>dubbo</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring</artifactId>
</exclusion>
<exclusion>
<groupId>org.jboss.netty</groupId>
<artifactId>netty</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.apache.zookeeper</groupId>
<artifactId>zookeeper</artifactId>
</dependency>
<dependency>
<groupId>com.github.sgroschupf</groupId>
<artifactId>zkclient</artifactId>
</dependency>
spring-service.xml配置
<!-- 配置掃描文件 -->
<context:component-scan base-package="cn.e3mall.service"/>
<!-- 使用dubbo發佈服務 -->
<!-- 提供方應用信息,用於計算依賴關係 -->
<dubbo:application name="e3-manager" />
<dubbo:registry protocol="zookeeper" address="zookeeper的ip和端口號" />
<!-- 用dubbo協議在20880端口暴露服務 -->
<dubbo:protocol name="dubbo" port="8081" />
<!-- 聲明需要暴露的服務接口 -->
<dubbo:service interface="cn.e3mall.service.TbItemService" ref="tbItemServiceImpl" timeout="600000" />
三、配置消費者
pom.xml依賴
<!-- dubbo相關 -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>dubbo</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring</artifactId>
</exclusion>
<exclusion>
<groupId>org.jboss.netty</groupId>
<artifactId>netty</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.apache.zookeeper</groupId>
<artifactId>zookeeper</artifactId>
</dependency>
<dependency>
<groupId>com.github.sgroschupf</groupId>
<artifactId>zkclient</artifactId>
</dependency>
spring-web.xml配置
<!-- 引用dubbo服務 -->
<dubbo:application name="e3-manager-web" />
<dubbo:registry protocol="zookeeper" address="zookeeper所在的ip和端口號" />
<dubbo:protocol port="8081" />
<dubbo:reference interface="cn.e3mall.service.TbItemService"
id="tbItemServiceImpl" />
四、注意
由於service和web都是兩個服務所以在配置的時候兩個服務都是要打包成war包,並且都需要添加spring和tomcat依賴,並且需要配置不同的端口號。