SpringBoot开发案例之整合Dubbo提供者(二)

00.jpg

大家有没有注意到,上一篇中提供者,暴露接口的方式?混搭。springboot本身接口实现使用了注解的方式,而Dubbo暴露接口使用的是配置文件的实现方式,即如下:

代码

1import org.springframework.stereotype.Service; 2//注意这里使用的是spring的注解 3@Service("userService") 4public class UserServiceImpl implements IUserService { 5 @Override 6 public void saveUser(User user) { 7 System.out.println("保存用户:"+user.getUsername()); 8 } 9} 10

配置

1<!-- 声明需要暴露的服务接口 --> 2<dubbo:service interface="com.itstyle.dubbo.service.IUserService" ref="userService"/>

如果以上使用spring注解,我们必须开启扫描:

@ComponentScan(basePackages={"com.itstyle.dubbo"})

当然,如果你不想使用注解,全配置实现:

1<bean id="userService" class="com.itstyle.dubbo.service.impl.UserServiceImpl"/> 2<!-- 声明需要暴露的服务接口 --> 3<dubbo:service interface="com.itstyle.dubbo.service.IUserService" ref="userService"/>

好吧,其实在这个注解走天下的年代,显然配置已经落后了半个世纪,下面是全注解实现:

首先我们要在dubbo.xml配置以下代码:

1<!-- 使用注解方式暴露接口 --> 2<dubbo:annotation package="com.itstyle.dubbo" />

修改UserServiceImpl.java:

1import com.alibaba.dubbo.config.annotation.Service; 2import com.itstyle.dubbo.domain.User; 3import com.itstyle.dubbo.service.IUserService; 4//这里引用阿里巴巴的注解配置 5@Service 6public class UserServiceImpl implements IUserService { 7 @Override 8 public void saveUser(User user) { 9 System.out.println("保存用户:"+user.getUsername()); 10 } 11}

这时候,我们再次运行SpringbootDubboApplication类,可以正常运行,并且成功注册到zookeeper。

##码云

https://git.oschina.net/52itstyle/springboot_dubbo_provider

作者: 小柒

出处: https://blog.52itstyle.com

点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

MySQL部分从库上面因为大量的临时表tmp_table造成慢查询

背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

2020年前端实用代码段,为你的工作保驾护航

有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )

SpringBoot自定义序列化的使用方式

场景及需求:项目接入了SpringBoot开发,现在需求是服务端接口返回的字段如果为空,那么自动转为空字符串。例如:\    {        "id":1,        "name":null    },    {        "id":2,        "name":"x