springboot中調用dubbo接口


工作中需要調用dubbo接口,網上資料很多,但胡亂不堪,特別總結一下

由於接口已經寫好,所有我們的角色是消費者

一、依賴包配置

 <!--dubbo依賴-->
        <dependency>
            <groupId>org.apache.dubbo</groupId>
            <artifactId>dubbo-spring-boot-starter</artifactId>
            <version>2.7.0</version>
        </dependency>
        <dependency>
            <groupId>org.apache.dubbo</groupId>
            <artifactId>dubbo</artifactId>
            <version>2.7.0</version>
        </dependency>
<!--依賴服務的jar包:這個需要生產端提供-->

二、生產者的地址

配置文件很簡單,application.propterties

spring.profiles.active=dev
spring.main.allow-bean-definition-overriding=true

#消費端的name,協議和端口一般都是寫死的
dubbo.application.name=bigscreen-wuwei
dubbo.protocol.name=dubbo
dubbo.protocol.port=20880
#生產端的地址,這個需要從zk獲取,zk算是注冊中心
dubbo.registry.address=zookeeper://ip:port

三、service中的調用

@Service
public class ServiceImpl implements XXXService{
     //本地service一般要用@AutoWired,dubbo的要用@Reference,就這點差別
    @Reference
    private GisOuterService gisOuterService;
    
   }

四、多注冊中心

考慮一種特殊的情況,需要對接多個數據注冊中心

配置文件就要改一下application.properties

dubbo.registries.gis.address=zookeeper://ip1:2181
dubbo.registries.patrol.address=zookeeper://ip2:2182

在具體調用的時候就需要指定一下

   @Reference(registry = "gis")
    private GisOuterService gisOuterService;

 五、啟動類

在啟動類上加上@EnableDubbo啟動dubbo服務


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM