我有两个域(用户,角色)。两者都有很多很多关系。 hibernate自动生成3个表(User,Role,UserRole)。
我已经集成了hibernate envers用于审计目的。我可以从用户和角色表中获得修订。如何从UserRole审计表获取审计修订。
在这里,我们没有创建UserRole域。基于多对多关系,UserRole表自动创建。因此没有域(UserRole)从UserRole审计表用户审计查询中获取审计修订。
由于UserRole
是一个连接表,您可能希望从该多对多关系的拥有方访问该关联的更改。为了示例,我将假设User
是该协会的所有者;所以你会访问类似于以下内容的那些:
User user = auditReader.find( User.class, userId, revisionNumber );
List<UserRole> userRoles = user.getUserRoles();
以上内容将为UserRole
的revisionNumber
连接表中的所有User
实体提供指定的标识符值userId
。