首页 > 编程语言 > 2020最新IDEA SpringBoot整合Dubbo的实现(zookeeper版)
2020
10-10

2020最新IDEA SpringBoot整合Dubbo的实现(zookeeper版)

首先,要在电脑上安装配置好zookeeper哦~

这是我云服务器上的zookeeper状态

在这里插入图片描述

接下来,开始整合

1. 准备一个dubbo-api的SpringBoot项目

用来存储Entity类和Server接口的项目,配置文件无须改动。

在这里插入图片描述

entity ? User

// Lombok注解 相当于Setter Getter toString()
@Data
public class User implements Serializable { // 序列化很重要!!!
  private static final long serialVersionUID = 7739394865008699599L; 
  private Long id;
  private String username;
  private String password;

}

service ? UserService

public interface UserService {
  User getUser();
}

2. 准备一个dubbo-provider的SpringBoot项目(提供服务方)

用来存储dubbo-api 的 Server接口 的实现类

在这里插入图片描述

Impl ? UserServiceImpl

@DubboService(version = "1.0.0")
public class UserServiceImpl implements UserService {
	// 此处的User类以及UserService接口都是来自dubbo-api中,所以需要在Maven中导入dubbo-api
  @Override
  public User getUser() {
    User user = new User();
    user.setId(1L);
    user.setUsername("root");
    user.setPassword("root");
    return user;
  }
}

在这里插入图片描述

application.properties !!!

server.port=8001
## Dubbo 服务提供者配置
## 名称
dubbo.application.name=provider
## Dubbo 服务对象的注册中心zookeeper的地址和端口
dubbo.registry.address=zookeeper://112.124.14.148:2181
## 注册中心请求超时,以毫秒为单位
dubbo.registry.timeout=25000
## 用Dubbo协议
dubbo.protocol.name=dubbo
## 在20880端口暴露服务
dubbo.protocol.port=20880
## 包扫描范围
dubbo.scan.base-packages=com.itzhang.Impl

3. 准备一个dubbo-consumer的SpringBoot项目(调用服务方)

用来存Controller层

在这里插入图片描述

controller ? UserController

@RestController
@RequestMapping("/user")
public class UserController {

  @DubboReference(version = "1.0.0")
  private UserService userService;

  @RequestMapping("/getUser")
  public User getUserList() {
    return userService.getUser();
  }
}

application.properties !!!

## 不要和provider项目端口冲突
server.port=7001
## Dubbo 服务消费者配置
dubbo.application.name=consumer
## Dubbo 服务对象的注册中心zookeeper的地址和端口
dubbo.registry.address=zookeeper://112.124.14.148:2181
## 服务对象的被注入的包扫描范围
dubbo.scan.base-packages=com.itzhang.controller
## 请求超时
dubbo.registry.timeout=25000

3. 测试

首先启动dubbo-provider

其次启动dubbo-consumer

访问dubbo-consumer中controller提供的接口。完整路径:http://localhost:7001/user/getUser,输出结果并且zookeeper中已成功注册,配置成功!

在这里插入图片描述

在这里插入图片描述

到此这篇关于2020最新IDEA SpringBoot整合Dubbo(zookeeper版)的文章就介绍到这了,更多相关IDEA SpringBoot整合Dubbo内容请搜索自学编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持自学编程网!

编程技巧