最近做了一个项目需要使用dubbo调用远程接口,写出来分享一下

首先需要提供接口的人给你接口地址,注册中心地址,以及参数类型,参数类型可以是实体类,可以让客户直接把实体类发给你

接口地址就是类名地址以及要调用的方法

比如:com.aaa.interface.ToInterService.sendService

其中com.aaa.interface是包名

ToInterService是类名

sendService是方法名

准备工作做好了就开始干吧

  1. 配置dubbo的配置文件 spring-dubbo.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:dubbo="http://code.alibabatech.com/schema/dubbo" xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans.xsdhttp://code.alibabatech.com/schema/dubbohttp://code.alibabatech.com/schema/dubbo/dubbo.xsd"><!-- 描述 --><description>dubbo客户端服务配置</description><!-- 消费者系统标志 --><dubbo:application name="ACTUARY-SYSTEM"/><!-- 注册中心地址 --><dubbo:registry protocol="zookeeper" address="注册中心IP:端口号" client="zkclient"/><!-- 消费者 --><dubbo:reference id="toInterService" interface="com.aaa.interface.ToInterService" url="dubbo://调用服务IP:端口号" check="false" timeout="600000"/>
    </beans>
    

    需要注意的是:注册中心的address,以及消费者需要调用的interface,url要正确

  2. 在本地新建类com.aaa.interface.ToInterService

需要注意:本地新建类的包名,类型,以及方法要和提供的一致,可以让客户提供,自行复制粘贴即可

package com.aaa.interface;import webservice.provider.prpall.bean.VoucherRequestRequest;public abstract interface ToInterService
{public abstract String sendService(String param);
}

3.加载spring-dubbo.xml

4.测试

    @AutowiredToInterService toInterService;public void test() {System.out.println("开始");String result=toInterService.sendService("aa");System.out.println("结果=="+result);}<dependency><groupId>com.alibaba</groupId><artifactId>dubbo</artifactId><version>2.8.4</version><exclusions><exclusion><artifactId>curator-framework</artifactId><groupId>org.apache.curator</groupId></exclusion><exclusion><artifactId>curator-client</artifactId><groupId>org.apache.curator</groupId></exclusion><exclusion><artifactId>guava</artifactId><groupId>com.google.guava</groupId></exclusion><exclusion><artifactId>spring-web</artifactId><groupId>org.springframework</groupId></exclusion></exclusions></dependency><!-- zookeeper注册中心工具包 --><dependency><groupId>org.apache.zookeeper</groupId><artifactId>zookeeper</artifactId><version>3.4.9</version></dependency><dependency><groupId>com.101tec</groupId><artifactId>zkclient</artifactId><version>0.9</version></dependency><!-- JunitTest依赖,仅仅junit测试使用 --><dependency><groupId>org.eclipse.jetty.websocket</groupId><artifactId>websocket-server</artifactId><version>9.2.10.v20150310</version><scope>test</scope></dependency>

dubbo远程调用接口相关推荐

  1. 本地测试dubbo远程调用找不到provider

    项目中遇到个坑,记录一下:本地测试dubbo远程调用找不到provider.(文中图片仅供参考) 生产者服务的service加多一层文件夹.dubbo就找不到这个服务了.报错如下: org.apach ...

  2. Dubbo远程调用找不到服务异常

    Dubbo远程调用找不到服务异常 1. 问题描述 2. 问题分析 3. 问题排查 3.1 服务提供者消费者是否正常 3.2 注册中心是否注册成功, 2.3 分别验证服务提供者与消费者 2.4 消费者和 ...

  3. 使用feign远程调用接口

    项目中开发中,经常会用到调用其他项目的接口 或者第三方接口的情况,以前经常使用的是spring 的restTemplate 或者httpClient,但是使用每次都需要写一些公共的调用代码,比较麻烦. ...

  4. 使用hutool的Http请求工具类远程调用接口(支持GET/POST)

    1.导入hutool依赖 <dependency><groupId>cn.hutool</groupId><artifactId>hutool-all& ...

  5. 如何请求别人的接口(远程调用接口)

    httpclient作用 在java代码中,发送Http请求.通常用来实现远程接口调用. pom依赖 <dependency><groupId>commons-httpclie ...

  6. openfeign远程调用接口报错:feign.codec.DecodeException: Error while extracting response for type

    错误信息: feign.codec.DecodeException: Error while extracting response for type [java.util.List<xxxx. ...

  7. 在远程调用别人接口的时候,传输参数一般都是String类型的字符串,改字符串可以是json格式的,也可以是xml格式的,那么问题来了

    在远程调用接口的时候,传输参数一般都是String类型的字符串,该字符串可以是json规则格式的,也可以是xml规则格式的,那么问题来了. 怎么将自己的对象,拼接成接口规定的格式?即将非格式化的数据( ...

  8. 怎么用feign远程调用别人的接口_Feign远程接口调用

    Feign远程接口调用 clouds234@163.com 2018-8-6 以下都是使用在springboot2.0.4内置启动插件基础上 Feign-only 不注册到eureka 单独使用fei ...

  9. RCF--RPC(远程调用框架)

    RPC(远程调用框架) 一. RPC定义 RPC(Remote Procedure Call Protocol)--远程过程调用协议,是一种通过网络从远程计算机请求服务,就像调用本地方法一样,不需要了 ...

最新文章

  1. linux内核配置系统浅析(转)
  2. 行业谈实践,客户送祝福
  3. Hibernate环境搭建以及HelloWorld
  4. 十、开始进入PowerBI的世界
  5. linux部署jar项目报错_Spring boot项目部署linux系统tomcat报错解决办法
  6. 【科研】施一公:我有6个办法提高英文科研写作能力
  7. 关于tcp/udp网络调试助手错误提示
  8. Stacer ---- Linux系统优化和监测工具
  9. 奇点云数据中台技术汇(三)| DataSimba系列之计算引擎篇
  10. 【亲自动手试验过的】硬盘免光驱安装Fedora5
  11. 校企同游快乐工作——湖南工程职院美和易思教师开展素质拓展活动
  12. 计算机产品选型与配置,高校校园网设备的选型和配置.DOC
  13. TreeSet()原理及使用
  14. 【水果识别】柑橘质量检测及分级系统【含GUI Matlab源码 738期】
  15. 4sum java_4Sum - hcx - ITeye博客
  16. 骗子QQ 14258588665 买ig骗我2600
  17. Axure 运行开发工具
  18. 【LaTeX】IEEE模板中作者及单位命令使用
  19. 安卓手机如何打开.crx文件_如何在安卓手机上使用Chrome插件-crx文件
  20. AP AUTOSAR——Update and Configuration Management UCM

热门文章

  1. 恰如其分的批评与莫名其妙的表扬
  2. C语言/C++编程学习:不找C/C++的工作也要学C/C++的原因!
  3. mysql获取每年的最后一天_MYSQL中取当前年份的第一天和当前周,月,季度的第一天/最后一天_MySQL...
  4. 和声是容介态——为《链政经济:区块链如何服务新时代治国理政》一书作序
  5. 视频监控如何实现异地共享/组网?EasyNTS解决远程难题
  6. 树莓派 小屏幕_树莓派无屏上手指南
  7. Linux安装DHCP实现自动获取IP地址
  8. 19岁少年重塑CPU,降低80%计算机功耗
  9. 利用Matlab做二维图形和三维图形
  10. 打造小程序B2B水果集采平台,果联科技获千万元天使轮融资