国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - springboot集成dubbo注解版的示例代碼

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

2021-06-06 14:04Menng Java教程

這篇文章主要介紹了springboot集成dubbo注解版的示例代碼,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

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

本文假定你已經有springboot和dubbo的使用經驗。

dubbo簡介

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

準備

此示例使用gradle構建,關于gradle的安裝配置,請參考官方文檔

zookeeper作為dubbo服務發現的基礎組件,關于zookeeper的安裝啟動,請參考官方文檔

項目結構如下

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
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

引入外部依賴

?
1
2
3
4
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.生產者dubbo配置

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
@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配置

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
@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.定義接口

?
1
2
3
public interface demoservice {
  string sayhello();
}

4.生產者實現接口

?
1
2
3
4
5
6
7
8
9
10
11
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.消費者調用接口

?
1
2
3
4
5
6
7
8
9
10
11
12
13
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' 即表示調用成功

其他

示例源碼(github)

dubbo注解配置

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。

原文鏈接:http://www.spring4all.com/article/1587

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 国产日皮视频 | 亚洲依人| 国产精品久久久久久久久久久久 | 中文字幕91 | 国内自拍视频在线观看 | 91欧美视频在线 | 99热少妇| 激情综合色综合久久综合 | 成人免费av| av网站免费看 | 久草在线 | 超碰人人干人人 | av一区二区三区 | 日韩美女国产精品 | 日韩精品一区二区三区在线 | 欧美午夜精品久久久久久蜜 | 国产精品亚洲一区二区三区在线 | 久久久久久国产精品mv | 福利社午夜影院 | 日日久 | 欧美一级片在线观看 | 亚洲 欧美 综合 | 国产精品尤物麻豆一区二区三区 | 日韩在线播放一区二区三区 | 天天色av | 午夜久久久久 | 一级片国产 | 91国视频| 中文字幕乱码亚洲精品一区 | 国产精品久久影院 | 久久se精品一区精品二区 | 婷婷五月情 | 国产在线观看免费 | 免费av电影网站 | 免费国产一区二区 | 日韩成人精品在线 | 成人在线视频网 | 综合色导航 | 国产免费久久精品 | 在线观看视频91 | 久久精品视频一区 |