基于Spring事件监听的业务处理

本文介绍了如何使用Spring的事件监听机制来降低代码耦合度,以审核业务为例,说明了事件监听器(ApplicationEvent和ApplicationListener)的使用,并探讨了同步监听在高并发场景下的局限性。
摘要由CSDN通过智能技术生成

本文仅仅对基于事件监听的业务处理方法做一个简单的介绍,具体企业中使用的基于事件监听的业务处理请参考:JMS + Spring,或者kafka等

首先说明一下为什么需要对事件进行监听?

其目的是为了代码解耦

举个例子,我如果要做一个审核业务,假如审核通过了,那么就向用户发送一条短信,具体伪代码如下

在这里插入图片描述

但是这段代码是有问题的,就是发送短信这个业务其实真正关心的是审核通过这个结果,而不关心除此之外的其他信息

像这样写,实际上就相当于将发送短信的业务硬编码到审核业务中,其实对于后期维护不利

为了解决这个问题,我们可以采用基于事件监听的方法来优化这段耦合度高的代码

事件监听的核心思路就是:通过监听事件,完成具体的操作

为了完成事件的监听,那么就需要: 事件 和 事件监听器

这个在Spring中已经为我们提供好了:

一个是ApplicationEvent,一个是ApplicationListener

下面是具体的代码

//首先创建一个事件类
@Getter
public c
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值