java - 如何将具有状态的对象置于版本控制之下?这还有道理吗?

标签 java database version-control

假设我有一个 User 类:

@Entity
public class User {

      @Id
      private int id;

      private String name;

      //Other fields and methods

}

在某个时间点,名称为“XYZ”,在其他时间点为“ABC”。我想跟踪这两种状态,就像我们在版本控制系统下跟踪文件一样。这些对象存储在关系数据库中。我能想到的一种粗略方法是将数据库本身的数据置于版本控制之下,但这并不可行,因为数据库表将包含许多此类用户的数据,甚至其中任何一个用户的更改都将要求提交更新。

我怎样才能实现这个目标?应用程序在必要时通常如何存储编辑历史记录?

谢谢!

最佳答案

如果您正在使用 hibernate ,您可以使用 envers

关于java - 如何将具有状态的对象置于版本控制之下?这还有道理吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37090066/

相关文章:

java - bukkit - 防止玩家在战斗中运行命令

java - MVC : Should this function be in the Controller or in the Model

php - 更改数据库中的用户名

svn - 将公司从 SVN 转换为 Hg?

SVN 优化以保持大型存储库响应

java - 使用 javamail api 提取嵌套的 .msg 附件

java - 用户登录 Facebook 后显示消息

database - Logstash 迭代内部对象并插入到数据库

java - JPA 中乐观锁定的表索引/pk

version-control - 我可以将旧版本作为提示和推送(使用 Mercurial)吗?