如何使用Envers审计查询获取Many To Many联合表的审计修订

问题描述 投票:0回答:1

我有两个域(用户,角色)。两者都有很多很多关系。 hibernate自动生成3个表(User,Role,UserRole)。

我已经集成了hibernate envers用于审计目的。我可以从用户和角色表中获得修订。如何从UserRole审计表获取审计修订。

在这里,我们没有创建UserRole域。基于多对多关系,UserRole表自动创建。因此没有域(UserRole)从UserRole审计表用户审计查询中获取审计修订。

hibernate hibernate-envers
1个回答
0
投票

由于UserRole是一个连接表,您可能希望从该多对多关系的拥有方访问该关联的更改。为了示例,我将假设User是该协会的所有者;所以你会访问类似于以下内容的那些:

User user = auditReader.find( User.class, userId, revisionNumber );
List<UserRole> userRoles = user.getUserRoles();

以上内容将为UserRolerevisionNumber连接表中的所有User实体提供指定的标识符值userId

© www.soinside.com 2019 - 2024. All rights reserved.