dubbo学习笔记2 简单的Application形式 dubbo服务搭建 消费者

一.编写消费者

1.新建Maven项目,编写接口和实现类

2.在pom中加入依赖

<!--spring依赖-->
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring</artifactId>
      <version>2.5.6</version>
    </dependency>

    <!--dubbo的依赖-->
    <dependency>
      <groupId>com.alibaba</groupId>
      <artifactId>dubbo</artifactId>
      <version>2.4.10</version>
      <exclusions>
        <exclusion>
          <groupId>org.springframework</groupId>
          <artifactId>spring</artifactId>
        </exclusion>
      </exclusions>
    </dependency>

    <!--zookeeper的依赖-->
    <dependency>
      <groupId>com.101tec</groupId>
      <artifactId>zkclient</artifactId>
      <version>0.4</version>
    </dependency>

3.编写接口SayHellow,不用编写实现类

4.在resources目录新建spring配置文件applicationContext.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/beans
       http://www.springframework.org/schema/beans/spring-beans.xsd
       http://code.alibabatech.com/schema/dubbo
       http://code.alibabatech.com/schema/dubbo/dubbo.xsd">

    <!--dubbo消费者配置-->

    <!--计算依赖关系,不同的应用命名尽量独立,消费者和生产者也命名独立-->
    <dubbo:application name="tiglle-dubbo-consumer"/>


    <!--和生产者的配置一致,消费者通过ingerface找到相应的提供者,并记录提供者暴露服务的端口,以后直接和提供者联系-->
    <dubbo:registry id="zk" address="tianxiaolin.cn:2181" protocol="zookeeper"/>

    <!--消费者配置-->
    <dubbo:consumer registry="zk"/>

    <!--使用的消费者,id:注入spring的id,interface:和本地的接口位置一致-->
    <dubbo:reference id="sayHellow" interface="com.tiglle.service.SayHellow"/>
    <!-- 提供者:(dubbo:service interface="接口路径") 提供服务-->
    <!-- 消费者:(dubbo:reference interface="接口路径") 提供服务-->
    <!-- 两个interface的值相同-->


</beans>

5.编写main方法,使用消费者

public static void main( String[] args ) {
        //加载spring容器
        /*
        此方法不支持dubbo的配置
        BeanFactory context = new XmlBeanFactory(new ClassPathResource("applicationContext.xml"));
        */
        ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext(new String[] { "applicationContext.xml" });
        //获取生产者实例
        SayHellow sayHellow = (SayHellow) context.getBean("sayHellow");
        String str = sayHellow.sayHellow("世界");
        System.out.print(str);
    }

6.运行程序

你好:世界
Process finished with exit code 0

消费者调用成功

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值