這篇文章主要介紹了springcloud如何使用dubbo開發(fā)rpc服務及調用,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
成都創(chuàng)新互聯(lián)專注于綦江網站建設服務及定制,我們擁有豐富的企業(yè)做網站經驗。 熱誠為您提供綦江營銷型網站建設,綦江網站制作、綦江網頁設計、綦江網站官網定制、小程序定制開發(fā)服務,打造綦江網絡公司原創(chuàng)品牌,更為您提供綦江網站排名全網營銷落地服務。
spring cloud中基于springboot開發(fā)的微服務,是基于http的rest接口,也可以開發(fā)基于dubbo的rpc接口。
一,創(chuàng)建goodsService模塊
1, 在創(chuàng)建的goodsService模塊中再創(chuàng)建goodsServiceApi和goodsServiceServer模塊
2,在oodsServiceApi模塊中定義接口 ,goodsServiceServer用于接口實現
3,goodsServiceServer模塊中pom文件引入相關依賴
net.biui goods-service-api 1.0-SNAPSHOT com.alibaba.cloud spring-cloud-starter-alibaba-nacos-discovery com.alibaba.cloud spring-cloud-starter-dubbo
4,goodsServiceServer中添加配置
spring: application: name: goods-service cloud: nacos: discovery: server-addr: 127.0.0.1:8848 namespace: c22e5019-0bee-43b1-b80b-fc0b9d847501 dubbo: registry: address: nacos://127.0.0.1:8848 scan: base-packages: net.biui.impl protocol: port: 20881 name: dubbo
5,goodsServiceServer編寫接口實現
@org.apache.dubbo.config.annotation.Service public class GoodsImpl implements GoodsApi { public String getGoodsName() { return "商品一"; } }
6,goodsServiceServer編寫啟動類
@SpringBootApplication @EnableDiscoveryClient public class GoodsServiceServerApplication { public static void main(String[] args) { SpringApplication.run(GoodsServiceServerApplication.class, args); } }
啟動后,dubbo服務會自動注冊到nacos服務發(fā)現中心
二,創(chuàng)建調用dubbo服務的模塊
1,new -> module -> 填寫信息 -> finish
2,添加pom依賴
org.springframework.boot spring-boot-starter-web com.alibaba.cloud spring-cloud-starter-alibaba-nacos-discovery com.alibaba.cloud spring-cloud-starter-dubbo net.biui goods-service-api 1.0-SNAPSHOT
3,添加配置
spring: application: name: demo-dubbo cloud: nacos: discovery: server-addr: 127.0.0.1:8848 namespace: c22e5019-0bee-43b1-b80b-fc0b9d847501
4,編寫controller調用dubbo服務
@RestController @RequestMapping("/demo") public class demoController { @org.apache.dubbo.config.annotation.Reference GoodsApi goodsApi; @GetMapping("/test") public String test(){ return "test " + goodsApi.getGoodsName(); } }
5,編寫啟動類
@SpringBootApplication @EnableDiscoveryClient public class demoDubboApplication { public static void main(String[] args) { SpringApplication.run(demoDubboApplication.class, args); } }
啟動后,demo-dubbo服務也會自動注冊到nacos(因為nacos.register.enable默認為true,即代表自動注冊,可以只訂閱,不注冊),對應接口返回了dubbo服務返回的信息!
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持創(chuàng)新互聯(lián)。