前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >SpringBoot开发案例之整合Dubbo提供者(二)

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

作者头像
小柒2012
发布2018-04-16 13:50:06
6250
发布2018-04-16 13:50:06
举报
文章被收录于专栏:IT笔记IT笔记
00.jpg
00.jpg

00.jpg

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

代码:

代码语言:javascript
复制
import org.springframework.stereotype.Service;
//注意这里使用的是spring的注解
@Service("userService")
public class UserServiceImpl implements IUserService {
    @Override
    public void saveUser(User user) {
        System.out.println("保存用户:"+user.getUsername());
    }
}

配置:

代码语言:javascript
复制
<!-- 声明需要暴露的服务接口 -->
<dubbo:service interface="com.itstyle.dubbo.service.IUserService" ref="userService"/>

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

代码语言:javascript
复制
@ComponentScan(basePackages={"com.itstyle.dubbo"})

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

代码语言:javascript
复制
<bean id="userService" class="com.itstyle.dubbo.service.impl.UserServiceImpl"/>
<!-- 声明需要暴露的服务接口 -->
<dubbo:service interface="com.itstyle.dubbo.service.IUserService" ref="userService"/>

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

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

代码语言:javascript
复制
<!-- 使用注解方式暴露接口 -->     
<dubbo:annotation package="com.itstyle.dubbo" />

修改UserServiceImpl.java:

代码语言:javascript
复制
import com.alibaba.dubbo.config.annotation.Service;
import com.itstyle.dubbo.domain.User;
import com.itstyle.dubbo.service.IUserService;
//这里引用阿里巴巴的注解配置
@Service
public class UserServiceImpl implements IUserService {
    @Override
    public void saveUser(User user) {
        System.out.println("保存用户:"+user.getUsername());
    }
}

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

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

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017-07-18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档