声明: 转载请注明出处
一.声明需要暴露的服务接口方式
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 ;