1

我正在尝试使用 Enver 的 RevisionEntity 存储修订注释,以便它与修订 ID 和时间戳在同一个表中,并且即使更改了多个实体也只存储一次。

我目前的做法是

  • 处理请求的控制器操作将注释放入会话变量中
  • 我的自定义 RevisionListener 读取会话变量,将注释添加到 RevisionEntity,并清除会话变量

不过,我对这种方法并不满意。似乎它很容易出现竞争条件和其他愚蠢的行为。有什么办法可以让这个更稳固吗?也许通过直接在控制器操作中访问 RevisionEntity ?

4

1 回答 1

2

我不确定我是否真的理解你的问题,但如果你只想在请求处理期间存储一些信息,你可以使用 Http.Request.current().args. 正如API 文档中的描述 所说,它是:

用于存储您的请求特定数据的可用空间

您的控制器操作只需要从params(或来自其他任何地方)复制评论并将它们存储在args地图中,然后 RevisionListener 可以从那里检索它们。

于 2011-08-12T19:27:56.010 回答