本文仅仅对基于事件监听的业务处理方法做一个简单的介绍,具体企业中使用的基于事件监听的业务处理请参考:JMS + Spring,或者kafka等
首先说明一下为什么需要对事件进行监听?
其目的是为了代码解耦
举个例子,我如果要做一个审核业务,假如审核通过了,那么就向用户发送一条短信,具体伪代码如下
但是这段代码是有问题的,就是发送短信这个业务其实真正关心的是审核通过这个结果,而不关心除此之外的其他信息
像这样写,实际上就相当于将发送短信的业务硬编码到审核业务中,其实对于后期维护不利
为了解决这个问题,我们可以采用基于事件监听的方法来优化这段耦合度高的代码
事件监听的核心思路就是:通过监听事件,完成具体的操作
为了完成事件的监听,那么就需要: 事件 和 事件监听器
这个在Spring中已经为我们提供好了:
一个是ApplicationEvent,一个是ApplicationListener
下面是具体的代码
//首先创建一个事件类
@Getter
public c