我有以下型号:
class TeamEntity {
private List<UserEntity> users = new ArrayList<UserEntity>();
private List<TeamAdminPermissionEntity> permissions = new ArrayList<TeamAdminPermissionEntity>();
...
}
class UserEntity {
private List<TeamEntity> teams = new ArrayList<TeamEntity>();
private List<TeamAdminPermissionEntity> permissions = new ArrayList<TeamAdminPermissionEntity>();
...
}
class TeamAdminPermissionEntity() {
private UserEntity ownerUser;
private TeamEntity ownerTeam;
...
}
因此,TeamEntity可以拥有许多与之关联的权限,其中每个权限都有一个所有者团队和一个所有者用户。 UserEntity也可以拥有许多权限。 TeamEntity可以拥有许多UserEntities,UserEntities可以是许多TeamEntities的一部分。
所以,鉴于我有一个:
我需要的是:
理想情况下,我想使用CriteriaBuilder,但HQL / SQL也很好。
非常感谢任何帮助!
答案 0 :(得分:0)
List<UserEntity> results = (List<UserEntity>) session.createCriteria(UserEntity.class).add(Restrictions.eq(TeamAdminPermission, false)