写写自己学习实现了个dubbo的小例子;
直接进入主题 :
1、配置需要的jar包信息(其中有些jar包可能不需要 根据自己的情况搞定)
2、首先配置web.xml的spring启动加载项
3、编写相应的接口
一、首先实现接口Hellow.Java
[java] view plain copy print ?
- package com.ds.test;
- public interface Hellow {
- public String sayHellow(String name);
- }
二、接口的实现类HellowImpl.java
[java] view plain copy print ?
- public class HellowImpl implements Hellow {
- public String sayHellow(String name) {
- return "Hello " + name;
- }
- }
4、配置具体的spring的配置信息关键点就这么点:applicationContext.xml
[java] view plain copy print ?
- <dubbo:annotation package="com.ds.*" />
- <!-- 提供方应用信息,用于计算依赖关系 -->
- <dubbo:application name="hellowServer" />
- <!-- 使用zookeeper广播注册中心暴露服务地址 -->
- <dubbo:registry address="zookeeper://127.0.0.1:2181"></dubbo:registry>
- <!-- 用dubbo协议在20880端口暴露服务 -->
- <dubbo:protocol name="dubbo" port="20880"></dubbo:protocol>
- <!-- 声明需要暴露的服务接口 --><pre name="code" class="java"> <dubbo:application name="customer" />
- <dubbo:annotation package="com.dt.*" />
- <dubbo:registry address="zookeeper://127.0.0.1:2181"></dubbo:registry>
- <dubbo:reference id="hellow" interface="com.ds.test.Hellow"></dubbo:reference></pre><br>
- <dubbo:service interface="com.ds.test.Hellow" ref="hellow"></dubbo:service><!-- 和本地bean一样实现服务 --><bean id="hellow" class="com.ds.test.impl.HellowImpl"></bean>
- <pre></pre>
好吧 以上就是服务提供者的代码以及配置 就这么简单。下面是我们客户端的代码,还是采用jar包还是采用以上的jar包就可以,客户端就简单多了 、直接进入主题
1、首先客户端需要将服务端提供相应的接口所以需要将服务端导成jar放入到客户端,如果在一个工程的话可以直接这么搞如下图:
2、将服务端的导入工程之后剩下的就是调用和客户端的配置,具体配置如下,详细的说明再次就不在说了,自己可以去dubbo的官网自己查看、
[java] view plain copy print ?
- <dubbo:application name="customer" />
- <dubbo:annotation package="com.dt.*" />
- <dubbo:registry address="zookeeper://127.0.0.1:2181"></dubbo:registry>
- <dubbo:reference id="hellow" interface="com.ds.test.Hellow"></dubbo:reference>
3、具体的调用如
[java] view plain copy print ?
- public class Client {
- public static void main(String[] args) {
- String path = Client.class.getClassLoader().getResource("").toString()
- .replace("classes", "");
- ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext(
- new String[] { path + "applicationContext.xml" });
- context.start();
- Hellow demoService = (Hellow) context.getBean("hellow");
- String hello = demoService.sayHellow("xupei");
- System.out.println(hello);
- }
- }
this's all 其实代码就这么多,接下来我们看看具体的部署吧,
1、对于zookeeper的安装和配置 我们这里简单的介绍一下,便于你读完我的文档能够自己实现成功。
- 首先去apache官网上去下载相应的zookeeper附上地址点击打开链接;http://mirrors.cnnic.cn/apache/zookeeper/
- 我的zookeeper实在window上安装的,直接解压就可以使用了,需要修改一下简单的配置,将解压后的文件中找到zookeeper-3.4.5\conf下的zoo_sample.cfg文件将名字修改为zoo.cfg 就ok了 这是最简单的单机版伪分布模式的,自己练习没有必要搞那么复杂。
- 接下来启动相应的服务就可以了,到zookeeper-3.4.5\bin下面直接双击zkServer.cmd(window)/zkServer.sh(unix)就ok,这样zookeeper就ok了。
- 下面就是部署了,首先去dubbo官网上去下载相应的发布管理软件,附上链接吧http://code.alibabatech.com/wiki/display/dubbo/Download,下载完管理工具直接部署到tomcate上就ok,启动tomcate就ok了,这样就可以管理dubbo+zookeeper了。
- 好了这样就全部都ok了,下面就是发布代码了。这里就不多说了 ,搞开发的你应该会吧,不会饿也没办法。