如何在scala和play中创建基于事件的系统

时间:2014-12-01 03:18:03

标签: scala playframework

我希望能够做到这样的事情,比如在Global或应用程序启动早期的某个地方:

UserDao.beforeSave(someFunction)

然后每当我保存用户对象时:

UserDao.save(user)

我的someFunction将被调用。

这是否可行,如果是这样,我该如何建模这种行为?

这是为应用程序中的关键点创建一个基于事件的系统,因此开发人员可以修改系统,而无需更改核心代码库。

1 个答案:

答案 0 :(得分:0)

正如上面的评论中所建议的,如果你真的想在Save之前做一些事情,也许应该在UserDAO.save方法中完成。如果没有,那么可能创建一个UserService。

如果之前实际保存不重要,您可以使用您发送的Akka事件。但是,Akka事件无法保证,它将在保存事件之前进行。