目前我正在考虑这种情况:我们已经UserService
registerUser()
方法。成功注册新用户后,我们应该向他们发送电子邮件通知。我们有EmailService
发送。
这里更好的方法是什么,将EmailService
注入UserService
并在UserService
中声明onRegistrationSucces()
方法
或
触发一个事件RegistrationSuccesEvent
并提供Listener
,这将与EmailService
一起运行?
在这种情况下使用事件是否有一些优点?
如果发送方不能或不应该知道接收方,或者您经常需要添加新侦听器,则解耦槽侦听器是有意义的。但像往常一样,您为此付出了代价,它可能会使应用程序更难以实现、理解或调试。
在你的情况下,我会自动连接它。如果以后必须添加 SMS 服务或其他接收器,仍可以根据需要将实现更改为侦听器。