SpringBoot与dubbo整合的三种方式:无dubbo配置文件、保留dubbo的xml配置文件、注解API的方式。 image.png 加了@EnableDubbo之后,@Service就是dubbo的注解,而不是Spring的。 本Demo是以Redis作为注册中心。

1、方式一

基于注解。
导入dubbo-starter,导入dubbo-starter,在application.properties配置各种属性,使用@Service【暴露服务】使用@Reference【引入服务】
Demo:https://gitee.com/lwqlwq/SpringBoot_Dubbo/tree/master/SpringBoot_Dubbo_Demo/dubbo-spring-boot

2、方式二

基于XML。
导入dubbo-starter,保留dubbo xml配置,使用@ImportResource导入服务提供者,服务消费者xml文件。
为什么要这么做,因为基于com.alibaba.dubbo.config.annotation.Service的@Service注解无法实现方法级别的超时重试设置,只能实现类级别。
Demo:https://gitee.com/lwqlwq/SpringBoot_Dubbo/tree/master/SpringBoot_Dubbo_Demo/dubbo-xml-spring-boot

3、方式三

基于API。
利用Dubbo注解API的方式,将每一个组件手动创建到容器中,让dubbo来扫描其他的组件如:
Demo:https://gitee.com/lwqlwq/SpringBoot_Dubbo/tree/master/SpringBoot_Dubbo_Demo/dubbo-api-configuration-boot