欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

SpringBoot與Dubbo整合的方式詳解

 更新時間:2019年09月11日 10:55:57   作者:zhangniuniu  
這篇文章主要介紹了SpringBoot與Dubbo整合的方式詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

1. 使用默認application.properties和注解的方式

導入dubbo-starter,在application.properties配置屬性,使用@Service注解來暴露服務,使用@Reference來引用服務。具體可參考 Dubbo整合SpringBoot,這里截取部分代碼方便理解。

屬性在application.properties中配置

服務提供方使用@Service注解暴露服務

部分配置如“timeout”等可以在注解上添加

服務消費方使用@Reference注解來引用服務

2. 引入dubbo.xml配置文件

保留dubbo.xml配置文件,導入dubbo-starter,使用@ImportResource導入dubbo的配置文件即可。

如果要實現(xiàn)暴露服務中的某個方法的配置,@Service注解此時就無能為力了

xml配置文件中的<dubbo:method />標簽可以實現(xiàn)該功能

這就要求我們引入xml配置文件,方法很簡單,啟動類中通過 @ImportResource 注解引入即可

3. 使用注解API的方式

依舊使用@Service注解來暴露服務,使用@Reference來引用服務。同時使用注解API的方式來替代xml配置文件中的標簽,將每一個組件手動創(chuàng)建到容器中,讓dubbo來掃描其他的組件。

注解類的配置主要有三點:①注解類加注解@Configuration;②每個注解項添加@Bean注入到容器中;③準確使用注解API。

以服務提供方式的注解類為例:

package com.zang.gmall.config;
import java.util.ArrayList;
import java.util.List;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import com.alibaba.dubbo.config.ApplicationConfig;
import com.alibaba.dubbo.config.MethodConfig;
import com.alibaba.dubbo.config.RegistryConfig;
import com.alibaba.dubbo.config.ServiceConfig;
import com.zang.gmall.service.UserService;
@Configuration
public class MyDubboConfig {
  

  //<dubbo:application name="boot-user-service-provider"></dubbo:application>
  @Bean
  public ApplicationConfig applicationConfig() {
    ApplicationConfig applicationConfig = new ApplicationConfig();
    applicationConfig.setName("user-service-provider");
    return applicationConfig;
  }
  
  //<dubbo:registry protocol="zookeeper" address="127.0.0.1:2181"></dubbo:registry>
  @Bean
  public RegistryConfig registryConfig() {
    RegistryConfig registryConfig = new RegistryConfig();
    registryConfig.setProtocol("zookeeper");
    registryConfig.setAddress("127.0.0.1:2181");
    return registryConfig;
  }
//略

/**
   *<dubbo:service interface="com.zang.gmall.service.UserService" 
    ref="userServiceImpl01" timeout="1000" version="1.0.0">
    <dubbo:method name="getUserAddressList" timeout="1000"></dubbo:method>
  </dubbo:service>
   */
  @Bean
  public ServiceConfig<UserService> userServiceConfig(UserService userService){
    ServiceConfig<UserService> serviceConfig = new ServiceConfig<>();
    serviceConfig.setInterface(UserService.class);
    serviceConfig.setRef(userService);
    serviceConfig.setVersion("1.0.0");
    
    //配置每一個method的信息
    MethodConfig methodConfig = new MethodConfig();
    methodConfig.setName("getUserAddressList");
    methodConfig.setTimeout(1000);
    
    //將method的設置關聯(lián)到service配置中
    List<MethodConfig> methods = new ArrayList<>();
    methods.add(methodConfig);
    serviceConfig.setMethods(methods);    
    return serviceConfig;
  }
}

使用@DubboComponentScan注解指定dubbo掃描路徑。

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • javafx實現(xiàn)時鐘效果

    javafx實現(xiàn)時鐘效果

    這篇文章主要為大家詳細介紹了javafx實現(xiàn)時鐘效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-11-11
  • 詳解Struts2攔截器機制

    詳解Struts2攔截器機制

    這篇文章主要介紹了詳解Struts2攔截器機制,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-06-06
  • 詳解SpringBoot中@PostMapping注解的用法

    詳解SpringBoot中@PostMapping注解的用法

    在SpringBoot中,我們經(jīng)常需要編寫RESTful Web服務,以便于客戶端與服務器之間的通信,@PostMapping注解可以讓我們更方便地編寫POST請求處理方法,在本文中,我們將介紹@PostMapping注解的作用、原理,以及如何在SpringBoot應用程序中使用它
    2023-06-06
  • mybatis trim標簽的使用詳解

    mybatis trim標簽的使用詳解

    這篇文章主要介紹了mybatis trim標簽的使用詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-06-06
  • 在Intellij Idea中使用jstl標簽庫的方法

    在Intellij Idea中使用jstl標簽庫的方法

    這篇文章主要介紹了在Intellij Idea中使用jstl標簽庫的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-05-05
  • Java?Handler同步屏障淺析講解

    Java?Handler同步屏障淺析講解

    同步屏障機制是什么?Handler發(fā)送的消息分為普通消息、屏障消息、異步消息,一旦Looper在處理消息時遇到屏障消息,那么就不再處理普通的消息,而僅僅處理異步的消息。不再使用屏障后,需要撤銷屏障,不然就再也執(zhí)行不到普通消息了
    2022-08-08
  • Java編程Socket實現(xiàn)多個客戶端連接同一個服務端代碼

    Java編程Socket實現(xiàn)多個客戶端連接同一個服務端代碼

    這篇文章主要介紹了Java編程Socket實現(xiàn)多個客戶端連接同一個服務端代碼,具有一定參考價值,需要的朋友可以了解下。
    2017-11-11
  • Java中Thread.join()的使用方法

    Java中Thread.join()的使用方法

    這篇文章主要介紹了Java中Thread.join()的使用方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-07-07
  • java 分轉(zhuǎn)元與元轉(zhuǎn)分實現(xiàn)操作

    java 分轉(zhuǎn)元與元轉(zhuǎn)分實現(xiàn)操作

    這篇文章主要介紹了java 分轉(zhuǎn)元與元轉(zhuǎn)分實現(xiàn)操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-02-02
  • mybatis注解如何實現(xiàn)對象批量更改

    mybatis注解如何實現(xiàn)對象批量更改

    這篇文章主要介紹了mybatis注解實現(xiàn)對象批量更改的方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-07-07

最新評論