Hibernate JPA Criteria Join没有给我一个列表
您好,我正在使用条件进行高级搜索查询,我有如下内容Hibernate JPA Criteria Join没有给我一个列表,hibernate,jpa,criteria,Hibernate,Jpa,Criteria,您好,我正在使用条件进行高级搜索查询,我有如下内容 CriteriaBuilder criteriaBuilder = entityManager.getCriteriaBuilder(); CriteriaQuery<Tuple> criteriaQuery = criteriaBuilder.createTupleQuery(); Root<Event> eventRoot = criteriaQuery.from(Event.class);
CriteriaBuilder criteriaBuilder = entityManager.getCriteriaBuilder();
CriteriaQuery<Tuple> criteriaQuery = criteriaBuilder.createTupleQuery();
Root<Event> eventRoot = criteriaQuery.from(Event.class);
Join<Event,Community> communityJoin = eventRoot.join("community", JoinType.LEFT);
Join<Event,User> user = eventRoot.join("user", JoinType.LEFT);
Join<Event,Device> device = eventRoot.join("device", JoinType.LEFT);
Join<Event,List<AuditLog>> auditLogs = eventRoot.join("auditLogs", JoinType.LEFT);
selections.add(user.alias("user"));
selections.add(device.alias("device"));
selections.add(auditLogs.alias("auditLogs"));
我得到的结果是一个元组列表
Query query = entityManager.createQuery(criteriaQuery);
List<Tuple> tuples = (List<Tuple>) query.getResultList();
我做错什么了吗?。我不知道为什么不能将结果作为列表审核日志。您将得到大小为N的元组列表,其中N是查询返回的实际SQL行数。因此,每个元组只有一个条目。根将出现多次,等等。我得到了一个元组列表,像这样的列表,对吗?。元组元素的“值”字段不能是列表?它只是将SQL行映射到实体中,而不是聚合它们(不是分组)
tuples.get(0).get("auditLogs")