首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Spring中的事件驱动模型(二)

前文回顾

应用Spring中的事件驱动模式

我们示例配置信息的刷新,当配置服务器收到提交的配置事件之后,将会触发各个服务响应的更新自己的配置。具体代码如下:

事件

定义一个配置刷新的事件。继承即可,content即为需要传递的object。

定义监听器

定义两个服务,都实现了,该接口继承自和接口,属于标准监听器的扩展接口,公开更多的元数据,例如支持的事件类型和可排序的监听器。

下面贴出两个Service的代码。

ServiceAListener

ServiceBListener

测试类

上面是我们的测试类,相当于事件的发布者,首先定义一个配置刷新的事件,然后通过注入的发布该事件。

由于ServiceA的优先级高于ServiceB,所以我们看到如下的结果:

总结

本文比较简单,在上一篇介绍Spring中的事件驱动模型基础上,具体应用到配置刷新的场景中。Spring的事件驱动模型使用的是观察者模式。通过抽象类和接口,可以实现事件的定义与监听,则实现了事件的发布。例子中使用的扩展了标准的事件监听接口,监听器在处理Event时,可以对传入的Event进行判断,并且可以设定监听器的优先级。后面抽时间会写一下 Spring Cloud 的热更新机制,也是基于Spring中的事件驱动模型。

订阅最新文章,欢迎关注我的公众号微信公众号

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180316G1QM3G00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券