java - JPA Hibernate 中间表 - 重新提交

标签 java hibernate jpa many-to-many

原始问题的改写:

我有典型的 M:M 关系,就我而言,请考虑 User/Role 示例:

用户、角色、USER_ROLE

我需要第二个 USER_ROLE 表来将用户角色进行匹配。我不会详细说明为什么会这样(除非您需要我这样做),但我正在寻找一种使用 JPA 实现此目的的方法,并且无需更改 UserRole 实体。

*我需要第二个 USER_ROLE 表来审核用户执行的操作以及执行操作时他的角色。*

最佳答案

您可能想使用internal callback method每当实体的生命周期发生变化(根据您的需要)时,就会在审核日志中创建一个条目。

回调注释或多或少是不言自明的:

@PrePersist void onPrePersist() {}
@PostPersist void onPostPersist() {}
@PostLoad void onPostLoad() {}
@PreUpdate void onPreUpdate() {}
@PostUpdate void onPostUpdate() {}
@PreRemove void onPreRemove() {}
@PostRemove void onPostRemove() {}

我引用documentation注释的数量:

Is used to specify callback methods for the corresponding lifecycle event. This annotation may be applied to methods of an entity class, a mapped superclass, or a callback listener class.

关于java - JPA Hibernate 中间表 - 重新提交,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22338741/

相关文章:

java - 使用 Java 反射动态创建 JSF 表单

java - 如何判断 Hibernate 实体是否为只读

java - 在 JPA Criteria API 的子查询中使用 ORDER BY 的替代方法是什么?

java - 使用相关表中的 FK 列值更新表

java - Spark-Cassandra Maven 项目,带有进行 scala-lib 调用的 java 源代码

java - 显示文本字段中的文本,但在组合框中选择时不会更改字体

java - Hibernate - @ElementCollection - 奇怪的删除/插入行为

java - OpenJPA 在使用 JPQL(选择查询)重新获取实体时不会刷新实体

java - 子类getter上的@NotNull影响父类表

java - Accumulo,使用 TransformingIterator 修改先前的键