服務端、客戶端、註冊端(zookeeper)
服務端配置:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://code.alibabatech.com/schema/dubbo
http://code.alibabatech.com/schema/dubbo/dubbo.xsd">
<!-- 自動掃描註解:通過dubbo實現 -->
<dubbo:annotation package="com.tjair.*" />
<!-- 必須加上:dubbo應用的名稱 -->
<dubbo:application name="dubbo-provider" />
<!-- dubbo應用註冊zookeeper地址 -->
<dubbo:registry address="zookeeper://127.0.0.1:2181" />
<!-- 用dubbo協議在20880端口暴露服務 -->
<dubbo:protocol name="dubbo" port="20880" />
<!-- 服務端聲明需要對外開放提供服務的接口 -->
<dubbo:service interface="com.tjair.provider.IProviderinfoService"
protocol="dubbo" ref="providerInfoService" />
<!-- 服務端實現接口的bean -->
<bean id="personInfoService"
class="com.tjair.provider.impl.ProviderInfoServiceImpl" />
</beans>
dubbo客戶端配置
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://code.alibabatech.com/schema/dubbo
http://code.alibabatech.com/schema/dubbo/dubbo.xsd">
<!-- 自動掃描註解:通過dubbo實現 -->
<dubbo:annotation package="com.tjair.*" />
<!-- 必須加上:dubbo應用的名稱 -->
<dubbo:application name="consumer-client" />
<!-- dubbo應用註冊到zookeeper的地址 -->
<dubbo:registry address="zookeeper://127.0.0.1:2181" />
<!-- 註冊需要使用的dubbo服務,通過interface指定服務接口 -->
<dubbo:reference id="clientService" interface="com.tjair.provider.IProviderinfoService"
timeout="10000" check="false" />
</beans>
pom.xml重點配置
<!-- 引入dubbo框架(服務端、客戶端通用) -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>dubbo</artifactId>
<version>2.5.3</version>
</dependency>
<!-- 因爲dubbo服務端需要註冊服務到zk中,因此依賴zkClient包 -->
<dependency>
<groupId>com.github.sgroschupf</groupId>
<artifactId>zkclient</artifactId>
<version>0.1</version>
</dependency>
注:需要在客戶端添加服務端接口的依賴