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

本文探讨了SpringBoot与Dubbo在接口暴露上的不同实现方式,包括使用注解和配置文件两种方法,并介绍了如何在SpringBoot项目中集成Dubbo,通过全注解方式实现服务接口的暴露。

00.jpg

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

代码

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

配置

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

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

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

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

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

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

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

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

修改UserServiceImpl.java:

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

作者: 小柒

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

转载于:https://my.oschina.net/52love/blog/1501306

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值