Dubbo在项目中的两种使用方法


声明: 转载请注明出处


一.声明需要暴露的服务接口方式

1.service服务层

   1.1 : applicationContext-service.xml配置文件

    在applicationContext-service.xml中需要配置基本的包扫描,且使用一个服务就要暴露一个 服务接口

      <context:component-scan base-package="com.pinyougou.sellergoods.service.impl" />

<dubbo:protocol name="dubbo" port="20881"></dubbo:protocol>
   
<dubbo:application name="pinyougou-sellergoods-service"/>  
   <dubbo:registry address="zookeeper://192.168.25.148:2181"/>
<!-- 声明需要暴露的服务接口 -->
<dubbo:service interface="com.pinyougou.sellergoods.service.BrandService" ref="brandServiceImpl" timeout="600000"/>
<dubbo:service interface="com.pinyougou.sellergoods.service.SpecificationService" ref="specificationServiceImpl" timeout="600000"/>

 1.2:impl实现java文件中@service注解应使用包

org.springframework.stereotype.Service;

下的注解.

2.web层

  2.1springmvc.xml

     在springmvc.xml中也需要配置基本的包扫描,且使用哪个服务就引用哪个服务

<context:component-scan base-package="com.pinyougou.manager.controller" />
<!-- 引用dubbo 服务 -->
<dubbo:application name="pinyougou-manager-web" />
<dubbo:registry address="zookeeper://192.168.25.148:2181"/>
<dubbo:reference interface="com.pinyougou.sellergoods.service.BrandService" id="brandService" />
<dubbo:reference interface="com.pinyougou.sellergoods.service.SpecificationService" id="specificationService" />

2.2在controller中引用service服务时要使用

javax.annotation.Resource;包下的@Resource注解
@Resource
private BrandService brandService ;

二.使用dubbo注解方式

     说明 : 使用此种方式不需要暴露服务接口,也不需要引用服务接口,直接使用dubbo注解即可

1.service服务层

1 .1 applicationContext-service.xml配置文件

<dubbo:protocol name="dubbo" port="20881"></dubbo:protocol>
   
<dubbo:application name="pinyougou-sellergoods-service"/>  
   <dubbo:registry address="zookeeper://192.168.25.148:2181"/>
<dubbo:annotation package="com.pinyougou.sellergoods.service.impl" />

 1.2:impl实现java文件中@service注解应使用包

com.alibaba.dubbo.config.annotation.Service;

中的注解

2.web层

  2.1springmvc.xml

<!-- 引用dubbo 服务 -->
<dubbo:application name="pinyougou-manager-web" />
<dubbo:registry address="zookeeper://192.168.25.148:2181"/>
<dubbo:annotation package="com.pinyougou.manager.controller" />

2.2在controller中引用service服务时要使用

com.alibaba.dubbo.config.annotation.Reference;包下的@Resource注解
@Reference
private BrandService brandService ;
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值