首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >根据需要记录数据库CUD操作和rollback语句

问根据需要记录数据库CUD操作和rollback语句
EN

Stack Overflow用户
提问于 2015-03-23 04:12:28
回答 2查看 168关注 0票数 0

我的应用程序使用Hibernate/Spring/Struts/MySql.

所需经费如下:

  1. 记录HQL查询w.r.t用户SessionId。
  2. 根据需要恢复/回滚语句。

目的是快速记录用户对数据所做的更改,并在需要时立即恢复。我不知道这样做是否可行。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-03-23 04:20:17

可以,停那儿吧。首先,看看冬眠项目。此项目帮助您进行更改审核。它为每个实体表创建审核表,并在实体被更改时自动填充该表。但我认为,任务的第二部分只能手动完成:在审计表中将存储所有实体更改。然后,您可以简单地将实体中的数据还原为最后一个版本。

票数 0
EN

Stack Overflow用户

发布于 2015-03-23 07:09:33

事务是酸的,它们是持久的。回滚已提交的事务是不可能的,因为可能已经有其他事务使用您更改的状态。

您可能需要一个CQRS体系结构,其中事件存储在数据库中(也解决了审计日志记录需求),这些更改由批处理机重放。

恢复一个动作的最简单的方法是提交一个补偿事件。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29203154

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档