欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

springboot集成dubbo注解版的示例代碼

工作中用springboot搭建項目,用dubbo做遠程調(diào)用。springboot提倡注解配置和java配置,本文是基于dubbo最新版本2.6.3,使用注解方式的示例。

成都創(chuàng)新互聯(lián)從2013年成立,先為桐梓等服務(wù)建站,桐梓等地企業(yè),進行企業(yè)商務(wù)咨詢服務(wù)。為桐梓企業(yè)網(wǎng)站制作PC+手機+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。

本文假定你已經(jīng)有springboot和dubbo的使用經(jīng)驗。

dubbo簡介

dubbo是阿里巴巴開源的分布式服務(wù)框架,一般使用dubbo的RPC調(diào)用。但2016年停止維護,現(xiàn)在使用的2.8.4版本其實是當當維護的dubbox。2017年8月阿里又重啟維護dubbo,并從2.5.7版本開始支持注解配置。

準備

此示例使用gradle構(gòu)建,關(guān)于gradle的安裝配置,請參考官方文檔。

zookeeper作為dubbo服務(wù)發(fā)現(xiàn)的基礎(chǔ)組件,關(guān)于zookeeper的安裝啟動,請參考官方文檔。

項目結(jié)構(gòu)如下

springboot-dubbo
├─settings.gradle
├─build.gradle
├─springboot-dubbo-api
│ │─build.gradle
│ └─src
│   └─main
│     └─java
│       └─org
│         └─aaron
│           └─springboot
│             └─dubbo
│               └─api
│                 DemoService.java
├─springboot-dubbo-consumer
│ │─build.gradle
│ └─src
│   └─main
│     ├─java
│     │ └─org
│     │   └─aaron
│     │     └─springboot
│     │       └─dubbo
│     │         └─consumer
│     │           DemoController.java
│     │           DubboConfiguration.java
│     │           DubboConsumerApplication.java
│     │             
│     └─resources
│        application.yml
└─springboot-dubbo-provider
  │─build.gradle
  └─src
    └─main
      ├─java
      │ └─org
      │   └─aaron
      │     └─springboot
      │       └─dubbo
      │         └─provider
      │           DemoServiceImpl.java
      │           DubboConfiguration.java
      │           DubboProviderApplication.java
      │             
      └─resources
        application.yml

引入外部依賴

  compile('com.alibaba:dubbo:2.6.3')
  compile('org.apache.zookeeper:zookeeper:3.4.9')
  compile('org.apache.curator:curator-framework:4.0.0')
  compile('org.springframework.boot:spring-boot-starter-web')

配置

1.生產(chǎn)者dubbo配置

@Configuration
public class DubboConfiguration {

  @Bean
  public RegistryConfig registryConfig() {
    RegistryConfig registryConfig = new RegistryConfig();
    registryConfig.setAddress("zookeeper://127.0.0.1:2181");
    registryConfig.setClient("curator");
    return registryConfig;
  }

  @Bean
  public ApplicationConfig applicationConfig() {
    ApplicationConfig applicationConfig = new ApplicationConfig();
    applicationConfig.setName("sprintboot-dubbo-provider");
    return applicationConfig;
  }

  @Bean
  public ProtocolConfig protocolConfig() {
    ProtocolConfig protocolConfig = new ProtocolConfig();
    protocolConfig.setPort(12021);
    protocolConfig.setName("dubbo");
    return protocolConfig;
  }
}

2.消費者dubbo配置

@Configuration
public class DubboConfiguration {

  @Bean
  public RegistryConfig registryConfig() {
    RegistryConfig registryConfig = new RegistryConfig();
    registryConfig.setAddress("zookeeper://127.0.0.1:2181");
    registryConfig.setClient("curator");
    return registryConfig;
  }

  @Bean
  public ApplicationConfig applicationConfig() {
    ApplicationConfig applicationConfig = new ApplicationConfig();
    applicationConfig.setName("sprintboot-dubbo-consumber");
    return applicationConfig;
  }

  @Bean
  public ConsumerConfig consumerConfig() {
    ConsumerConfig consumerConfig = new ConsumerConfig();
    consumerConfig.setTimeout(3000);
    return consumerConfig;
  }
}

3.定義接口

public interface DemoService {
  String sayHello();
}

4.生產(chǎn)者實現(xiàn)接口

import com.alibaba.dubbo.config.annotation.Service;

@Component
@Service(interfaceClass = DemoService.class, version = "1.0")
public class DemoServiceImpl implements DemoService {

  @Override
  public String sayHello() {
    return "Hello Springboot Dubbo";
  }
}

5.消費者調(diào)用接口

import com.alibaba.dubbo.config.annotation.Reference;

@RestController
public class DemoController {

  @Reference(interfaceClass = DemoService.class, version = "1.0")
  private DemoService demoService;

  @RequestMapping("/hello")
  public String sayHello() {
    return demoService.sayHello();
  }
}

啟動

  1. 本地啟動zookeeper
  2. 依次啟動springboot-dubbo-provider,springboot-dubbo-consumer
  3. 瀏覽器訪問 localhost:8080/hello
  4. 看到返回'Hello Springboot Dubbo' 即表示調(diào)用成功

其他

示例源碼(Github)

Dubbo注解配置

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習有所幫助,也希望大家多多支持創(chuàng)新互聯(lián)。

網(wǎng)頁名稱:springboot集成dubbo注解版的示例代碼
文章位置:http://aaarwkj.com/article44/jjhhhe.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站改版、外貿(mào)建站品牌網(wǎng)站制作、ChatGPT、網(wǎng)站營銷搜索引擎優(yōu)化

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站建設(shè)
九九视频在线观看免费观看| 97免费人妻在线视频| 不卡二卡三卡四卡精品| 日韩一区精品视频一区二区| 国产精品视频一区二区久久| 国产精品线路一线路三| 最新日韩欧美一区二区| 国产成人精品福利一区二区| 国产精品自拍午夜福利| 精品视频一区二区三区在线观看 | 亚洲午夜经典一区二区日韩| 亚洲男人天堂免费观看| 日韩精品中文字幕有码在线| 国产精品一区二区免费式| 国产性做爰片免费视频| 国产三级国产精品国产| 午夜毛片免费在线播放| 蜜臀视频在线观看免费| 日本人免费一区二区电影| 高清亚洲一区二区三区| 黄片欧美视频在线观看| 亚洲精品露脸自拍高清在线观看| 久久碰国产一区二区三区| 成人国产av一区二区三区| 国产a级一区二区三区| 亚洲一区二区精品91眼镜| 亚洲国产日韩欧美第一页| 亚乱熟女一区二区三区| 99国产精品欲av麻豆在线观看| 亚洲精品国产精品乱码不卞| 曰韩av毛片在线观看| 国产精品天干天综合网| 少妇的诱惑免费在线播放| 18禁在线免费观看网站| 欧美三级影院网上在线| 麻豆精品情欲人妻一区| 国产精品一区久久91| 国产高清学生三级一区二区| 日麻批视频在线免费观看| 国产亚洲精品精品国产亚洲| 最近中文字幕免费手机版|