我有两个这样的实体:
EntityX:
id Long
name String
entityYId Long
EntityY (this entity is very hard, because it has a lot of data)
id Long
name String
xxx
xxx
.....我需要做一些事情,比如
Root<EntityX> xRoot = criteriaQuery.from(EntityX.class);
Join<EntityX, EntityY> yJoin = xRoot.join("entityYId", JoinType.LEFT); 我需要yJoin,因为我需要这个多选的JPA标准:
pId = xRoot.get("id");
pName = xRoot.get("name");
pEntityYName = yJoin.get("name");
cr.multiselect(
cb.construct(
ResultData.class,
pId,
pName,
pEntityYName));我能做到吗?如果这是不可能的,我能做什么来解决这个问题,记住!我只需要在EntityX中使用"entityYId“,而不是所有的entityY元素。
谢谢!
发布于 2012-02-23 23:48:32
您可以在Root类上使用select方法。有关更多信息,请参阅http://www.objectdb.com/java/jpa/query/jpql/select#SELECT_in_Criteria_Queries_
https://stackoverflow.com/questions/9416296
复制相似问题