Hibernate - 从数据库中自动created_date和updated_date

时间:2013-09-26 05:56:31

标签: database hibernate jpa orm

我们需要在每个表中添加两列 - created_date和updated_date。 数据库的类型可以是以下任何一种:Oracle,MySQL,PostgreSQL,CouchDB。

这两列应该存储日期和时间。 只有在创建行时才应填充created_date。 每次更新行时都应填充updated_date(在创建时也是如此)。

解决方案适用于运行许多Hibernate JVM的云。 由于没有单个JVM,它们可能偶尔会不同步。 所以我们不希望解决方案在这两列中填充JVM时间。

在Hibernate中是否有与数据库无关的方法? 我们希望将日期创建/更新的责任放在DB本身上。 触发器将是我们想要尝试的最后一个选项,因为为每个表生成会很麻烦。

理想的解决方案是在JPA / Hibernate中使用某种注释,它将指示ORM工具在插入/更新期间从DB创建或更新日期。

1 个答案:

答案 0 :(得分:0)

找到了解决方案,其解释如下:Custom SQL for Columns - PrismoSkills

此解决方案与数据库无关且Hibernate友好。