定制休眠脏检查事件监听器以更新单独的计数表

时间:2019-02-21 19:53:56

标签: mysql hibernate

我的使用场景如下。

我有一个名为Deal的实体类,它具有状态属性和帐户ID。帐户与交易之间的关系是一对多的。还有另一个mysql表,其唯一目的是跟踪每个帐户的交易状态计数。例如,如果一个ID为2的帐户有4个交易,状态s1中为1,状态s2中为2,状态s3中为1,则计数表将具有以下行: {AccountId:2; s1:1; s2:2,s3:1};

关于交易实体的状态更改和更新计数表,有2种情况。

  1. 创建了一个默认状态为s1的新交易,然后计数表中相应行中的s1列需要增加1。

  2. 现有交易具有从s2到s3的状态转换,那么计数表中的对应行需要从s2列减去1,再从s3列减去1。

我必须使用休眠事件处理来实现此目的。阅读一些相关文档之后,我认为一种可能的方法是自定义默认的休眠脏检查,以便在进行脏检查时,脏检查侦听器获取AccountId和状态信息之前/之后,然后发出db write来更新计数表。 。

我的问题是我在正确的轨道上吗?在我的用例中,自定义脏检查是否可行?我是新来的冬眠,所以任何建议都值得赞赏。

0 个答案:

没有答案