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、C、C++等中十进制数的精度

java - Hibernate:如何根据条件选择返回 0 和 null 的最大列值

java - 从 hibernate 查询中排除实体 bean 属性?

java - JPA 一对多 : List vs Set

java - 创建自定义完成/回调处理程序以在 HTTP 请求完成后返回对象

java - JDBCTemplate 使用 BeanPropertyRowMapper 设置嵌套 POJO

java - 为什么@SequenceGenerator 有名字?

hibernate - 带有非键连接列的 Spring boot 多对一不起作用

Spring Data JPA @OneToOne 注释无限递归错误

java - 在子类中创建打印父类(super class)方法的方法?