我想为我的每个实体维护 ACL 信息。为此,我有以下实体:
@Entity
public class ACLEntry {
...
@Id
private Long id;
private Long sid;
private Integer permissionMask;
}
应为其维护 acl 信息的实体如下所示:
@Entity
public class Folder {
...
@Id
private Long id;
@OneToMany
@JoinColumn(name="entity_id")
private List<ACLEntry> aclEntries;
}
从休眠文档:
在拥有的实体中使用外键列的单向一对多并不常见,也不推荐
为什么不建议这样做,为什么我应该使用可连接的?
有没有更好的方法来解决这个问题?