Spring Event 简介
解决的问题
在软件开发中,我们经常会遇到这样的业务场景:当一个主业务完成后,需要触发一连串的后续操作。例如,用户成功注册账号后,系统需要:
- 给用户发送欢迎邮件;
- 为用户发放新手优惠券;
- 初始化用户的积分账户;
- 记录注册日志。
如果直接把这些代码全写在 registerUser() 方法里,主业务方法就会变得极其臃肿,而且每当要增加新功能(比如“发送注册短信通知”)时,都必须修改原有的注册逻辑,这严重违反了设计模式中的开闭原则(对扩展开放,对修改关闭)。而 Spring 事件监听机制(Spring Event) 就是为了解决这个问题而生的。