SpringBoot版本:2.2.1.RELEASE
1,使用docker安装zookeeper
使用docker命令下载zookeeper
docker pull zookeeper
运行zookeeper
docker run -d --name zk -p 2181:2181 {镜像ID}
2,服务提供者
创建SpringBoot工程,引入dubbo的starter依赖
<!--dubbo-stater依赖-->
<dependency>
<groupId>com.alibaba.boot</groupId>
<artifactId>dubbo-spring-boot-starter</artifactId>
<version>0.2.0</version>
</dependency>
编写一个接口
package com.dufg.spring.spring_boot.server;
public interface IProductServer {
public String shopping();
}
编写该接口的实现类,并用dubbo的@Service注解(若要注册服务就必须开启该注解)
package com.dufg.spring.spring_boot.server.impl;
import com.alibaba.dubbo.config.annotation.Service;
import com.dufg.spring.spring_boot.server.IProductServer;
@Service
public class ProductServer implements IProductServer {
@Override
public String shopping() {
System.out.println("购买成功");
return "购买成功";
}
}
在SpringBoot主程序类中使用@EnableDubbo注解
@SpringBootApplication
@EnableDubbo
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
3,服务消费者
创建SpringBoot工程,引入dubbo的starter依赖
<!--dubbo-stater依赖-->
<dependency>
<groupId>com.alibaba.boot</groupId>
<artifactId>dubbo-spring-boot-starter</artifactId>
<version>0.2.0</version>
</dependency>
将服务提供者的接口包添加进工程中
调用方法:在类中注入该接口使用@Reference标注
@Reference
private IProductServer productServer;
然后直接调用该接口的方法即可
public String shopping(){
return productServer.shopping();
}
结果
调用成功