服务端、客户端、注册端(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>
注:需要在客户端添加服务端接口的依赖