1.创建一个简单maven项目 叫做 api 定义接口和实体类(实体类可以考虑拆分成另一个项目例如:model)
这个实体类必须实现序列化接口
2.通过springboot 项目创建 provider(服务端)
2.1 pom配置文件
<!--依赖API--> <dependency> <groupId>com.cabinh.boot</groupId> <artifactId>doubbo-api</artifactId> <version>1.0-SNAPSHOT</version> </dependency> <!--dubbo starter--> <dependency> <groupId>com.alibaba.spring.boot</groupId> <artifactId>dubbo-spring-boot-starter</artifactId> <version>2.0.0</version> </dependency> <dependency> <groupId>com.101tec</groupId> <artifactId>zkclient</artifactId> <version>0.10</version> </dependency> <dependency> <groupId>org.apache.zookeeper</groupId> <artifactId>zookeeper</artifactId> <version>3.4.10</version> <!--zookeeper 和spring中都包含slf4j 和log4j 在zookeeper 中需将其排除--> <exclusions> <exclusion> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> </exclusion> <exclusion> <groupId>log4j</groupId> <artifactId>log4j</artifactId> </exclusion> </exclusions> </dependency>
2.2 application.properties配置
spring.dubbo.application.name=providerService //名称 spring.dubbo.registry.address=zookeeper://106.12.25.103:2181 spring.dubbo.protocol.name=dubbo spring.dubbo.protocol.port=20880 spring.dubbo.scan=org.spring.springboot.dubbo
2.3创建api 接口的实现
这里service必须导入alibba的包,并且将这个类交给spring容器管理
2.4 在启动类中加上@EnableDubboConfiguration注解启动dubbo
3.通过springboot 项目创建 consumer(客户端)
3.1pom和application.properties配置同服务端
3.2创建controller 并且通过@Reference 注解 引用 api 暴露出来的服务接口
如此完成简单dubbo DEMO的运用