【问题标题】:Maintaining entity row version/history manually in database table using JPA/hibernate使用 JPA/hibernate 在数据库表中手动维护实体行版本/历史
【发布时间】:2011-09-24 13:46:17
【问题描述】:

我不知道在哪里问这个问题或如何问。基本上我需要几个实体类,如果我从数据库表的角度考虑,每一行都会有一个特定的列,如“S0”,它将指示应用程序的当前状态。我的应用程序将基于“获取数据”所有表中默认为 S0'(默认为 history='S0')。

当我需要 history 时,我会获取 history column = 'S0' 的所有行,并插入 value ='S1' 且其他属性完全相同的新行(除了在插入时更改的标识)。下次像'S2'这样的。 S0 行将保持不变。

我的应用程序应该可以通过选择存档数据来加载/填充自身。比如加载带有历史 S1 的应用程序

我如何使用 JPA+Hibernate 进行管理。在 JDBC+JSP 中,我曾经在每个表上都有一个列历史记录并手动处理:复制并全部插入。但我认为这是一种危险而不是好的做法。

请给我一些建议/帮助来帮助我。

【问题讨论】:

    标签: java database hibernate jpa


    【解决方案1】:

    你检查过环境吗? http://www.jboss.org/envers

    【讨论】:

    • 是否可以控制环境,例如仅根据给定的指令进行审计,而不是每次实体更新时进行审计?
    • 我的应用程序应该可以通过选择归档数据来加载/填充自身。比如加载带有历史 S1 的应用程序。
    猜你喜欢
    • 2010-10-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-07
    相关资源
    最近更新 更多