1.dubbox-provider示例

在eclipse中建立maven project,名为provider-parent,包含两个maven medule:provider-api 和 provider。

项目源码已经上传至码云:http://git.oschina.net/yeyouluo/dubbox-demo-provider。

使用mvn install命令编译provider-api,最终在本地maven仓库中会生成对应的provider-api-0.0.1-SNAPSHOT.jar。如果在实际生产环境中,还应该上传到私服或中央仓库中,便于消费者使用(暴露的服务在此jar中)。

运行Provider.java,执行main方法:

 package com.yeyouluo.dubbox.provider.test;

 import java.io.IOException;

 import org.springframework.context.support.ClassPathXmlApplicationContext;

 public class Provider {

     public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
ClassPathXmlApplicationContext ac = new ClassPathXmlApplicationContext("dubbox-provider.xml");
ac.start(); // 为保证服务一直开着,利用输入流的阻塞来模拟
System.in.read();
} }

Provider.java

启动后,admin中出现提供者实例:

2.dubbox-consumer示例

consumer实例比较简单,配置好<dubbo:consumer>标签,就可以像调用本地服务一样调用远程服务。

项目源码已经上传至码云:http://git.oschina.net/yeyouluo/dubbox-demo-consumer。

运行Consumer.java,执行main方法:

 package com.yeyouluo.dubbox.consumer.test;

 import java.io.IOException;
import java.util.List; import org.springframework.context.support.ClassPathXmlApplicationContext; import com.yeyouluo.dubbox.provider.inter.IDemoService;
import com.yeyouluo.dubbox.provider.pojo.User; public class Consumer { public static void main(String[] args) throws IOException {
ClassPathXmlApplicationContext ac = new ClassPathXmlApplicationContext("dubbox-consumer.xml");
ac.start(); IDemoService demoService = (IDemoService)ac.getBean("demoService");
String res = demoService.sayHello("yeyouluo");
System.out.println(res);
List<User> users = demoService.getUsers();
for( User u : users ){
System.out.println(u.toString());
} System.in.read();
} }

Consumer.java

控制台输出如下:

admin中出现消费者实例:

3.附:使用ZooInspector可视化zk内容

ZooInspector下载地址:

  链接: https://pan.baidu.com/s/1c2KQDpQ 密码: uxpa

dubbox系列【三】——简单的dubbox提供者+消费者示例的更多相关文章

  1. dubbox系列【二】——dubbox admin环境搭建

    1.环境 JDK7+ zookeeper 3.3.6 tomcat 7+ 2.搭建步骤 (1)安装zookeeper 单机模式:参考这里. 伪集群模式:参考这里. ①单机或伪集群模式均可. ②笔者使用 ...

  2. dubbox系列【一】——dubbox简介

    1.dubbox是什么? dubbox是当当网开源的开源分布式服务框架,基于阿里巴巴dubbo. 1个框架 + 2个方案:分布式服务框架 + RPC远程调用方案 + SOA服务治理方案. 2.dubb ...

  3. sql server 备份与恢复系列三 简单恢复模式下的备份与还原

    一.概述 前面讲了备份的一些理论知识,这篇开始讲在简单恢复模式下的备份与还原.在简单模式下是不能做日志备份的,发生灾难后,数据库最后一次备份之后做的数据修改将是全部丢失的,所以在生产环境下,数据又很重 ...

  4. 玩转华为物联网IoTDA服务系列三-自动售货机销售分析场景示例

    场景简介 通过收集自动售货机系统的销售数据,EI数据分析售货销量状况. 该场景主要描述的是设备可以通过MQTT协议与物联网平台进行交互,应用侧可以到物联网平台订阅设备侧变化的通知,用户可以在控制台或通 ...

  5. Redis总结(五)缓存雪崩和缓存穿透等问题 Web API系列(三)统一异常处理 C#总结(一)AutoResetEvent的使用介绍(用AutoResetEvent实现同步) C#总结(二)事件Event 介绍总结 C#总结(三)DataGridView增加全选列 Web API系列(二)接口安全和参数校验 RabbitMQ学习系列(六): RabbitMQ 高可用集群

    Redis总结(五)缓存雪崩和缓存穿透等问题   前面讲过一些redis 缓存的使用和数据持久化.感兴趣的朋友可以看看之前的文章,http://www.cnblogs.com/zhangweizhon ...

  6. Kafka系列2:深入理解Kafka消费者

    Kafka系列2:深入理解Kafka消费者 上篇聊了Kafka概况,包含了Kafka的基本概念.设计原理,以及设计核心.本篇单独聊聊Kafka的消费者,包括如下内容: 生产者是如何生产消息 如何创建生 ...

  7. 前端构建大法 Gulp 系列 (三):gulp的4个API 让你成为gulp专家

    系列目录 前端构建大法 Gulp 系列 (一):为什么需要前端构建 前端构建大法 Gulp 系列 (二):为什么选择gulp 前端构建大法 Gulp 系列 (三):gulp的4个API 让你成为gul ...

  8. Web 开发人员和设计师必读文章推荐【系列三十】

    <Web 前端开发精华文章推荐>2014年第9期(总第30期)和大家见面了.梦想天空博客关注 前端开发 技术,分享各类能够提升网站用户体验的优秀 jQuery 插件,展示前沿的 HTML5 ...

  9. MySQL并发复制系列三:MySQL和MariaDB实现对比

    http://blog.itpub.net/28218939/viewspace-1975856/ 并发复制(Parallel Replication) 系列三:MySQL 5.7 和MariaDB ...

随机推荐

  1. 【处理多服务器日志合并处理问题】多服务器的日志合并统计——apache日志的cronolog轮循

    转发:http://www.chedong.com/tech/rotate_merge_log.html   内容摘要:你完全不必耐心地看完下面的所有内容,因为结论无非以下2点:1 用 cronolo ...

  2. JavaScript之图片懒加载的实现

    图片懒加载指的是在浏览过程中随着需要才被加载出来,例如某宝上面浏览商品时,会伴随很多的图片,如果一次全部加载出来的话,显然资源有些浪费,并且加载速度也会相对降低,那么懒加载的实现很重要.即随着浏览翻阅 ...

  3. Can’t open /dev/* exclusively. Mounted filesystem?解决

    1 错误提示:Can’t open /dev/* exclusively. Mounted filesystem? 做完软件RAID之后,根据鸟哥书上的操作,其实没有真正删除软件RAID,导致出现如下 ...

  4. junit4X系列--Exception

    原文出处:http://www.blogjava.net/DLevin/archive/2012/11/02/390684.html.感谢作者的无私分享. 说来惭愧,虽然之前已经看过JUnit的源码了 ...

  5. try{}catch(e){}不能捕获到异常

    只能捕获到ReferenceError异常,I don't know why. try{ aa();//这是一个未被定义的方法 }catch(e){ if(e instanceof Reference ...

  6. Android开发模板代码(二)——为ImageView设置图片,退出后能保存ImageView的状态

    接着之前的那个从图库选择图片,设置到ImageView中去,但是,我发现了一个问题,就是再次进入的时候ImageView是恢复到了默认状态,搜索了资料许久之后,终于是发现了解决方法,使用SharePr ...

  7. raid制作(转载)

    Dell r710服务器,有4块450G硬盘,默认做的RAID5.我们的目的是取其中3块硬盘做RAID5,留一块硬盘做热备. 在这里,我具体解释一下 ①4块硬盘做成RAID5 ②3块硬盘做RAID5, ...

  8. sed运用

    流编辑器sed sed简介 sed是stream editor的缩写,一种流编辑器,它一次处理一行内容.处理时,把当前处理的行存储在临时缓冲区中,称为"模式空间"(pattern ...

  9. eclipse修改默认workspace

    1.进入 Window > Preferences > General > Startup and Shutdown 选中 Prompt for workspace on start ...

  10. 关于int main( int argc, char *argv[] )

    int main(int argc, char *argv[], char *env[]) 1. int argc 表示你在命令行下输入命令的时候,一共有多少个参数. 2. char *argv[] ...