没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
试读
12页
本文主要从Spring与Dubbo整合的角度,深入探讨了其原理与源码分析。首先,我们从应用启动类与配置入手,详细解析了@PropertySource和@EnableDubbo两个重要注解的作用和实现方式。然后,我们深入研究了@EnableDubboConfig和@DubboComponentScan两个核心注解,详细解读了它们在Spring启动时的作用以及如何通过@Import注解导入对应的Registrar类。最后,我们详细分析了DubboConfigConfigurationRegistrar的registerBeanDefinitions方法,揭示了其如何利用Spring中的AnnotatedBeanDefinitionReader来读取注解的过程。整篇文章深入浅出,旨在帮助读者更好地理解Spring与Dubbo的整合原理,提高编程效率。
资源推荐
资源详情
资源评论
2
服
务
导
出
的
⼊
⼝
为
ServiceBean
中
的
export()
⽅
法
,
当
Spring
启
动
完
之
后
,
通过
接收
Spring
的
ContextRefreshedEvent
事件
来
触
发
export()
⽅
法
的
执
⾏
。
⼀个
ServiceBean
对
象
就
表
示
⼀个
Dubbo
服
务
,
ServiceBean
对
象
中
的
参
数
就
表
示
服
务
的
参
数
,
⽐
如
timeout
,
该
对
象
的
参
数
值
来
⾄
@Service
注
解
中
所
定
义
的
。
服
务
导
出
主
要
得
做
两
件事
情
:
1.
根
据
服
务
的
参
数
信
息
,
启
动
对
应
的
⽹络
服
务
器
(
netty
、
tomcat
、
jetty
等
),
⽤
来
接收
⽹络
请
求
2.
将
服
务
的
信
息
注
册到
注
册
中
⼼
但
是
在
做
这
两
件事
情
之
前
得
先
把
服
务
的
参
数
确
定
好
,
因
为
⼀个
Dubbo
服
务
的
参
数
,
除
开
可
以
在
@Service
注
解
中
去
配
置
,
还
会
继
承
Dubbo
服
务
所
属
应
⽤
(
Application
)上
的
配
置
,
还
可
以
在
配
置
中
⼼
或
JVM
环
境
变
量
中
去
配
置
某
个
服
务
的
参
数
,
所
以
⾸
先
要
做
的
是
确
定
好
当
前
服
务
最
终
的
(
优
先
级
最
⾼
)
的
参
数
值
。
确
定
好
服
务
参
数
之
后
,
就
根
据
所
配
置
的
协
议
启
动
对
应
的
⽹络
服
务
器
。
在
启
动
⽹络
服
务
器
时
,
并
且
在
⽹络
服
务
器
接收
请
求
的
过
程
中
,
都
可
以从
服
务
参
数
中
获
取
信
息
,
⽐
如
最
⼤
连
接数
,
线
程
数
,
socket
超
时时
间
等
等
。
启
动
完
⽹络
服
务
器
之
后
,
就将
服
务
信
息
注
册到
注
册
中
⼼
。
同
时
还
有
向
注
册
中
⼼
注
册
监
听
器
,
监
听
Dubbo
的
中
的
动
态
配
置
信
息
变
更
。
1. DemoService
接
⼝
表
示
⼀个
服
务
,
此
时
的
服
务
表
示
服
务
定
义
2. DemoServiceImpl
表
示
DemoService
服
务
的
具
体
实
现
,
此
时
的
服
务
表
示
服
务
的
具
体
实
现
3. DemoService+group+version
表
示
⼀个
服
务
,
此
时
的
服
务
增
加
了
分
组
和
版
本
概
念
4. http://192.168.1.112:80/com.tuling.DemoService
表
示
⼀个
服
务
,
此
时
的
服
务
增
加
了
机
器
IP
和
Port
,
表
示
远
程
机
器
可
以
访
问
这
个
URL
来
使
⽤
com.tuling.DemoService
这
个
服
务
5. http://192.168.1.112:80/com.tuling.DemoService?
timeout=3000&version=1.0.1&application=dubbo-demo-provider-application
表
示
⼀个
服
务
,
此
时
的
服
务
是
拥
有
参
数
的
,
⽐
如
超
时时
间
、
版
本
号
、
所
属
应
⽤
在
dubbo
中
就
是
⽤
的
最
后
⼀
种
⽅
式
来
表
示
服
务
的
。
服
务
导
出
要
做
的
⼏
件事
情
:
1.
确
定
服
务
的
参
数
服
务
导
出
⼤
概
原
理
(
⾯
试
时
可
以
这
么
答
)
服
务
概
念
的
演
化
服
务
导
出
思
路
3
2.
确
定
服
务
⽀
持
的
协
议
3.
构
造
服
务
最
终
的
URL
4.
将
服
务
URL
注
册到
注
册
中
⼼
去
5.
根
据
服
务
⽀
持
的
不
同协
议
,
启
动
不
同
的
Server
,
⽤
来
接收
和
处
理
请
求
6.
因
为
Dubbo
⽀
持
动
态
配
置
服
务
参
数
,
所
以
服
务
导
出
时
还
需
要
绑
定
⼀个
监
听
器
Listener
来
监
听
服
务
的
参
数
是
否
有
修
改
,
如
果
发
现
有
修
改
,
则
需
要
重
新
进
⾏
导
出
在
执
⾏
ServiceConfig.export()
时
,
此
时
ServiceConfig
对
象
就
代
表
⼀个
服
务
,
我
们
已
经
知
道
了
这
个
服
务
的
名
字
(
就
是
接
⼝
的
名
字
),
并
且
此
时
这
个
服
务
可
能
已
经
有
⼀
些
参
数
了
,
就
是
@Service
注
解
上
所
定
义
的
参
数
。
但
是
在
Dubbo
中
,
除
开
可
以
在
@Service
注
解
中
给
服
务
配
置
参
数
,
还
有
很
多
地
⽅
也
可
以
给
服
务
配
置
参
数
,
⽐
如
:
1. dubbo.properties
⽂
件
,
你
可
以
建
⽴
这
个
⽂
件
,
dubbo
会
去
读
取
这
个
⽂
件
的
内
容
作为
服
务
的
参
数
,
Dubob
的
源
码
中
叫
做
PropertiesConfiguration
2.
配
置
中
⼼
,
dubbo
在
2.7
版
本
后
就
⽀
持
了
分
布
式
配
置
中
⼼
,
你
可
以
在
Dubbo-Admin
中
去
操
作
配
置
中
⼼
,
分
布
式
配
置
中
⼼
就
相
当
于
⼀个
远
程
的
dubbo.properties
⽂
件
,
你
可
以
在
Dubbo-Admin
中
去
修
改
这
个
dubbo.properties
⽂
件
,
当
然
配
置
中
⼼
⽀
持按
应
⽤
进
⾏
配
置
,
也
可
以
按
全
局
进
⾏
配
置
两
种
,
在
Dubbo
的
源
码
中
AppExternalConfiguration
表
示
应
⽤
配
置
,
ExternalConfiguration
表
示
全
局
配
置
。
3.
系统
环
境
变
量
,
你
可
以
在
启
动
应
⽤
程
序
时
,
通过
-D
的
⽅
式
来
指
定
参
数
,
在
Dubbo
的
源
码
中
叫
SystemConfiguration
4.
再加
上
通过
@Service
注
解
所
配
置
的
参
数
,
在
Dubbo
的
源
码
中
叫
AbstractConfig
服
务
的
参
数
可
以从
这
四
个
位
置
来
,
这
四
个
位
置
上
如
果
配
了
同
⼀个
参
数
的
话
,
优
先
级
从
⾼
到
低
如
下:
SystemConfiguration -> AppExternalConfiguration -> ExternalConfiguration ->
AbstractConfig -> PropertiesConfiguration
可
以
看
出
,
-D
⽅
式
配
置
的
参
数
优
先
级
最
⾼
,
配
置
中
⼼
次
之
,
注
解
随
后
,
dubbo.properties
最
后
。
你
可
以
在
dubbo.properties
⽂
件
或
配
置
中
⼼
中
通过
⼀下
形式
去
给
⼀个
服
务
配
置
参
数
:
-D
⽅
式
也
类
似
。
从以
上
分
析
我
们
可
以
看
出
,
在
服
务
导
出
时
,
⾸
先
得
确
定
服
务
的
参
数
。
确
定
服
务
的
参
数
1 dubbo.service.{interface-name}[.{method-name}].timeout=3000
剩余11页未读,继续阅读
资源评论
光芒软件工匠
- 粉丝: 789
- 资源: 64
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功