在参考 table 中提供时间戳(多对多关系)

Providing timestamp in reference table (many to many relationship)

考虑以下 table(参考 table 在 tables A 和 B 之间,多对多关系):

A_ID int (FK),
B_ID int (FK),
change_date timestamp - represents timestamp when this relation has been created. 

提供此时间戳的最佳解决方案是什么?当我执行插入时(实际上是 Hibernate 执行),Hibernate 只知道 A_ID 和 B_ID.

目前唯一听起来合理的解决方案是触发器。你怎么看?

如果您希望将数据添加到多对多关系 table,只需将此 table 映射为一个实体,并将其作为一个实体进行管理。

AB 中,映射从 @ManyToMany@OneToMany

在新实体中说 AB,您将 AB 映射到 @ManyToOne@Id(两个字段)。

查看休眠参考文档中的 Example 134(具有 link 实体的双向多对多)。

您可以使用默认值 CURRENT_TIMESTAMp。我认为这应该有效。

A_ID int (FK),
B_ID int (FK),
change_date timestamp default Current_timestamp ON INSERT