zoukankan      html  css  js  c++  java
  • Dubbo在项目中的两种使用方法

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

    1.1 service服务层

    【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"/>

    【impl实现类中使用@Service注解】

      这里的@Service来自org.springframework.stereotype.Service;包下

    1.2 web层

    【springmvc.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" />

    【在controller中引用service服务时使用@Resource注解】

    @Resource
    private BrandService brandService ;

      @Resource来自于javax.annotation.Resource包下

    二、使用dubbo注解方式(推荐)

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

    2.1 service服务层

    【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" />

    【impl实现类使用@service注解】

      注意,@Service来自com.alibaba.dubbo.config.annotation.Service;包下

    2.2 web层

    【springmvc.xml】

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

    【在controller中使用@Reference引用服务】

    @Reference
    private BrandService brandService ;

      @Reference来自com.alibaba.dubbo.config.annotation.Reference;包下

    转自:https://blog.csdn.net/A_jungle/article/details/83045507

  • 相关阅读:
    【JAVA SE基础篇】49.文件字符流和字节数组流
    【JAVA SE基础篇】48.IO流四大抽象类介绍和字节流
    【JAVA SE基础篇】47.file类的方法
    【JAVA SE基础篇】46.IO流的介绍
    【HTML篇】4.HTML的内嵌标签、框架标签、表单
    【HTML篇】3.HTML的图片标签、超链接标签、表格标签
    【HTML篇】2.HTML的head标签和body标签
    【HTML篇】1.HTML的介绍、三大基石、标准文档结构
    【JAVA SE基础篇】45.迭代器、Collections工具类以及使用容器存储表格
    【JAVA SE基础篇】44.手工实现简易HashMap和HashSet
  • 原文地址:https://www.cnblogs.com/yft-javaNotes/p/10938926.html
Copyright © 2011-2022 走看看