赞
踩
日常开发中,我们经常会碰到这样的业务场景:用户注册,注册成功后需要发送邮箱、短信提示用户,通常我们都是这样写:
- /**
- * 用户注册
- */
- @GetMapping("/userRegister")
- public String userRegister(UserVo userVo) {
- //校验参数
-
- //存库
-
- //发送邮件
-
- //发送短信
-
- //API返回结果
- return "操作成功!";
- }
可以发现,用户注册与信息推送强耦合,用户注册其实到存库成功,就已经算是完成了,后面的信息推送都是额外的操作,甚至信息推送失败报错,还会影响API接口的结果,如果在同一事务,报错信息不捕获,还会导致事务回滚,存库失败。
本文记录springboot使用@EventListener监听事件、ApplicationEventPublisher.publishEvent发布事件实现业务解耦。
查看博文
SpringBoot - 事件机制使用详解(ApplicationEvent、ApplicationListener)_springboot 事件-CSDN博客
https://www.cnblogs.com/huanzi-qch/p/14792984.html
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。