赞
踩
欢迎关注公众号【sharedCode】致力于主流中间件的源码分析, 可以直接与我联系
本文是dubbo系列的第一篇,在正式讲解dubbo的源码之前,需要搭建一套dubbo的样例,用于我们阅读源码以及理解dubbo的核心功能,本文是以springboot
为基础的,其他的通过xml配置的太麻烦了。
springboot starter : 0.1.1
dubbo版本: 2.6.2
新建项目dubbo-provider, dubbo-service,dubbo-interface,dubbo-consumer这四个项目,项目结构如下
dubbo-provider pom.xml
<parent>
dubbo-service 和dubbo-consumer的pom文件相同 pom.xml
<dependencies>
dubbo-interface pom文件
<build>
启动类
@SpringBootApplication
application.yml文件
- spring:
- application:
- name: dubbo-service
- profiles:
- active: dev
- server:
- port: 7100
- dubbo:
- application:
- name: dubbo-service
- registry:
- address: zookeeper://localhost:2181
- protocol:
- name: dubbo
- port: 20880
装饰层
@Service 注解是com.alibaba.dubbo.config.annotation.Service 的,不是spring提供的
/**
UserFacadeService 为暴露出去的接口服务,在dubbo-interface中进行定义,方便消费者和生产者都能引用到
内部service层
@Service
启动类
@SpringBootApplication
建立一个service类,用来引用dubbo-service中提供的接口服务
@Service
建立controller用来测试接口
@RestController
application.yml
- spring:
- application:
- name: dubbo-consumer
- profiles:
- active: dev
- server:
- port: 7101
- dubbo:
- application:
- name: dubbo-consumer
- registry:
- address: zookeeper://localhost:2181
- protocol:
- name: dubbo
- port: 20880
打开浏览器,访问http://localhost:7101/getUser?userId=1 ,得到结果
{"userId":1,"userName":"测试用户:1"
本文搭建demo的项目结构是按照我正式生产环境进行搭的,所以跟其他博客上的项目结构有些区别,不是那么简单,有需要demo的可以关注公众号私信我! 一起交流学习!
欢迎关注公众号【sharedCode】致力于主流中间件的源码分析, 可以直接与我联系
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。