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中已成功注冊,配置成功!


轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/78741.html
標籤:其他
