关键词:
1.版本匹配问题
dubbo官网上是有说明的,也有具体的例子。https://github.com/apache/incubator-dubbo-spring-boot-project
1.x版本的springboot需要对应0.1版本的dubbo-spring-boot-starter跟较低版本的dubbo。
2.x版本的springboot对应0.2版本的dubbo-spring-boot-starter跟2.6.x版本的dubbo。
至于zookeeper倒是没有明确规定。
2.包说明
<dependency> <groupId>com.github.sgroschupf</groupId> <artifactId>zkclient</artifactId> <version>0.1</version> </dependency>
zkclient包服务提供者有就行了,服务消费者可以不打。
其他的,依照官网,需要打的starter也有不同:
2.x的话要打三个包:
<dependency> <groupId>com.alibaba.boot</groupId> <artifactId>dubbo-spring-boot-starter</artifactId> <version>0.2.0</version> </dependency> <!-- Dubbo --> <dependency> <groupId>com.alibaba</groupId> <artifactId>dubbo</artifactId> <version>2.6.5</version> </dependency> <!-- Spring Context Extras --> <dependency> <groupId>com.alibaba.spring</groupId> <artifactId>spring-context-support</artifactId> <version>1.0.2</version> </dependency>
1.x的话只打那个starter就可以了(注意要0.1.0的)。
还有,0.2.1的包经常搜不到,所以我打了0.2.0的,但是官网最新的是0.2.1。
3.不同版本的配置
体现在dubbo的service、reflect、跟配置信息的不同。
1.x版本:
服务提供者:
# dubbo springboot 配置 dubbo.application.name=dubbo-provider dubbo.registry.address=zookeeper://127.0.0.1:2181 dubbo.scan.base-packages=com.chriswei.bean
@Service @Component public class helloProviderimpl implements helloProvider {}
服务消费者:
# dubbo springboot 配置 dubbo.application.name=live-dubbo-comsumer dubbo.registry.address=zookeeper://127.0.0.1:2181
public class HelloConsumer { @Reference private helloProvider hello; }
1.x版本这么匹配就算是能用了,控制台会打印出你发布出去的服务,以包全名形式,当然你可以打开zkCli.cmd,输入ls /查看一下你的服务发布出去没有。
2.x版本的话,依据官方示例:
服务提供者:
# Spring boot application spring.application.name = dubbo-provider-demo server.port = 9090 management.port = 9091 # Base packages to scan Dubbo Components (e.g., @Service, @Reference) dubbo.scan.basePackages =com.chriswei.bean # Dubbo Config properties ## ApplicationConfig Bean dubbo.application.id = dubbo-provider-demo dubbo.application.name = dubbo-provider-demo ## ProtocolConfig Bean dubbo.protocol.id = dubbo dubbo.protocol.name = dubbo dubbo.protocol.port = 12345 ## RegistryConfig Bean dubbo.registry.id = my-registry dubbo.registry.address = zookeeper://127.0.0.1:2181
@Service( version = "1.0.0", application = "${dubbo.application.id}", protocol = "${dubbo.protocol.id}", registry = "${dubbo.registry.id}" ) @Component public class helloProviderimpl implements helloProvider {}
服务消费者:
# Spring boot application spring.application.name = dubbo-consumer-demo server.port = 8082 management.port = 8083 # Dubbo Config properties ## ApplicationConfig Bean dubbo.application.id = dubbo-consumer-demo dubbo.application.name = dubbo-consumer-demo ## ProtocolConfig Bean dubbo.protocol.id = dubbo dubbo.protocol.name = dubbo dubbo.protocol.port = 12345
@Service public class HelloConsumer { @Reference(version = "1.0.0", application = "${dubbo.application.id}", url = "dubbo://localhost:12345") private helloProvider hello; }
特别要注意dubbo://localhost:12345这个写法,这里就这么写,而不能写zookeeper://127.0.0.1:2181。
dubbo与springboot的三种整合方式
SpringBoot与dubbo整合的三种方式:1、导入dubbo-starter,在application.properties配置属性,使用@Service暴露服务,使用@Reference引用服务,使用@EnableDubbo开启dubbo注解(或者在application.properties中配置dubbo.scan.base-packages=com.lina02.gmall)2、保留 查看详情
ali的dubbo与springboot
在这只是记录:SpringBoot与ali的dubbo版本问题在springBoot1.0+的项目中,dubbo的版本应是2.6.5(不包括)以下,而dubbo与springBoot的中间件(dubbo-starter.version)应是2.0.0以下。在springBoot2.0+的项目中,dubbo的版本应是2.6.5(包括)以上,dubbo-starter.ve... 查看详情
springboot与dubbo整合遇到的坑
整合环境:dubbo2.6.2springboot2.1.5遇到的问题:服务一直无法注册到zookeeper注册中心项目结构:使用application.properties文件:配置都没问题,启动的时候也没有明显的错误;然后就去百度看到大部分都是这种配置,之后在一篇博客中... 查看详情
手把手教你dubbo与springboot常用两种方式整合
一、Dubbo整合SpringBoot的方式(1) 1)直奔主题,方式一: pom.xml中引入dubbo-starter依赖,在application.properties配置属性,使用@Service【暴露服务】使用@Reference【引用服务】,选取的是application.properties+部分注解的方式来完成。 ... 查看详情
dubbo从入门到精通与springboot集成的三种方式(十一)(代码片段)
1 方式一(注解方式)导入dubbo-starter,在application.properties配置属性,使用@Service【暴露服务】使用Reference【引用服务】新版本的dubbo 是@DubboService 和@DubboReference然后在启动类上面 标 @EnableDubbo 开启基于注解的du... 查看详情
springboot整合dubbo
SpringBoot整合Dubbo一、Dubbo Dubbo是一款高性能、轻量级的开源JavaRPC框架, 它提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现。 关键点介绍: 1.注册与发现 ... 查看详情
rabbitmq与springboot搭配实现监听
...实例,后面自己补了一个demo,便于理解。demo中主要利用springboot的配置方式,一、消费者(也就是watcher)配置配置都采用spring的注解进行配置1、创建连接 @BeanpublicConnectionFactorycreateConnectionFactory(){Cachin 查看详情
springboot与dubbo整合入门(三种方式)(代码片段)
Springboot与Dubbo整合三种方式详解整合环境:jdk:8.0dubbo:2.6.2springboot:2.1.5项目结构:1、搭建项目环境: (1)创建父项目与三个子项目,创建项目时,都使用springinitializr,创建时,父项目中注意的一点: (2)创建三个子... 查看详情
springboot整合dubbo
通过三个工程演示整合过程工程一:API工程:服务端与客户端共同需要引入的工程 pom:无特殊依赖,下边内容供服务端与客户端引用此工程使用<groupId>com.boot.dubbo.demo</groupId><artifactId>dubbo-api</artifactId><v... 查看详情
springboot与jax-rs框架jersey的完美搭配
...JAX-RS框架添加Jeresy2.x的依赖build.gradle文件内容:创建一个springboot项目在IDE里一路nextSpringBoot启动APP注册jerseyservlet这和原来在web.xml配置的是一样的,设置Mapping,设置init初始化参数,对应的servletclassname.所有的rest/*请求都将被ServletContain... 查看详情
springboot与dubbo整合
1.添加依赖 <!--SpringBootDubbo依赖--> <dependency> <groupId>io.dubbo.springboot</groupId> <artifactId>spring-boot-starter-dubbo</artifactId> <version>$dubbo 查看详情
分布式事务:springboot+dubbo+seata+nacos实现案例
案例源码使用SpringBoot2.3.2+Dubbo2.7.6+Mybatis1.3.2+Nacos1.3.2+Seata1.3.0整合来实现Dubbo分布式事务管理,使用Nacos作为Dubbo和Seata的注册中心和配置中心,使用MySQL数据库和MyBatis来操作数据库。案例说明项目包含四个模块,consumer模块依赖其他... 查看详情
微服务学习三:springboot与springcloud集成之eurake的使用(server端,client端)
这个多亏了网站上的一个大神的博客:http://blog.csdn.net/forezp/article/details/70148833强烈推荐学习:1、springcloud是什么,这个大家百度吧,我一会也说不明白,但是比dubbo更强大,包含了dubbo的内容,也包含了比dubbo更多的内容。2、什... 查看详情
dubbo源码dubbo与springboot整合时是如何管理bean的?(代码片段)
目录前言一、ImportBeanDefinitionRegistrar二、@EnableDubboConfig与@DubboComponentScan三、DubboConfigConfigurationRegistrar与DubboComponentScanRegistrar扫描并注册ServiceBean扫描并注册ReferenceBean四、@EnableDubbo五、要点总结前言 本文由于... 查看详情
springboot项目关于文件的上传与下载
springboot页面需要实现文件的上传与下载贴出部分代码html代码文件的下载<formtarget="name"id="download_dubbo_form"name="download_dubbo_form"method="post"action="/jfpointscore-test/download"><buttonid="download_dubbo_config 查看详情
springboot+dubbo简单分布式rpc调用demo(代码片段)
使用springboot+dubbo搭建RPC入门案例本文背景简述:最近在学习公司的一套RPC框架,初步接触的时候感觉挺复杂的。但是知道其原理肯定是和dubbo很相似的,毕竟都是RPC框架嘛,只是各自使用的范围和使用者群体有些不同罢了。于是... 查看详情
dubbo整合springboot
目前的dubbo已支持和springboot集成,还是之前的例子,这次我们通过springboot容器来实现。借此了解一下基于springboot容器启动的dubbo的配置及使用。1.准备工作创建一个Maven空项目,作为项目的父工程,此工程的子项目基于SpringBoot2.0... 查看详情
dubbo入门学习-----dubbo整合springboot(代码片段)
springboot节省了大量的精力去配置各种bean,因此通过一个简单的demo来整合springboot与dubbo一、创建boot-user-service-provider本篇博文基于上篇中的dubbo项目,整体工程如下:1、pom.xml<?xmlversion="1.0"encoding="UTF-8"?><projectxmlns="http://maven... 查看详情