Spring Boot2.0与Dubbo整合
最近在练习项目时,遇到了问题,需要用到springboot与dubbo进行整合的项目,就是现在的大多数项目都是在Spring Boot1.0的基础上进行的与Dubbo的整合,我们都知道,阿里已经很久没有管理Dubbo了,更何况又是与新框架Spring Boot整合,所以对Spring Boot的整合不太好,你会发现,整合之后项目启动速度会很慢。
在2019年,Spring Boot2.0已经成熟稳定了,但是网上文章总却难以找到对Spring Boot2.0与Dubbo的完美整合,本人经过多方查找(博客、官方文档等),终于完美整合了。
阿里后来恢复了对Dubbo的维护,也有了对Spring Boot2.0的整合
1.Maven依赖
<!--里面包括了对Dubbo与zookeeper的依赖-->
<dependency>
<groupId>com.alibaba.boot</groupId>
<artifactId>dubbo-spring-boot-starter</artifactId>
<version>0.2.0</version>
</dependency>
2.配置文件
application.properties
dubbo.application.name=服务注册名称
dubbo.registry.address=服务注册地址(安装zookeeper的服务器地址):2181
dubbo.registry.protocol=zookeeper
dubbo.protocol.name=dubbo
#指定的服务注册在zookeeper的端口,如果不指定,后期可能会出现端口冲突
dubbo.protocol.port=12345
3.SpringBoot启动器
添加以下注解,以启用Dubbo
@EnableDubbo
4.Service层(提供服务)
使用@Service注解时,请使用Dubbo下的包
import com.alibaba.dubbo.config.annotation.Service;
5.Controller层(调用服务)
使用服务不再使用@Autowired,使用:
@Reference
6.注意:
所有的实体类都要实现序列化,以免项目报错