javax.persistence.criteria.Root.joinList()方法的使用及代码示例

x33g5p2x  于2022-01-28 转载在 其他  
字(3.3k)|赞(0)|评价(0)|浏览(197)

本文整理了Java中javax.persistence.criteria.Root.joinList方法的一些代码示例,展示了Root.joinList的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Root.joinList方法的具体详情如下:
包路径:javax.persistence.criteria.Root
类名称:Root
方法名:joinList

Root.joinList介绍

暂无

代码示例

代码示例来源:origin: org.omnifaces/omnipersistence

@Override
@SuppressWarnings("hiding")
public <X, Y> ListJoin<X, Y> joinList(String attributeName) {
  return getWrapped().joinList(attributeName);
}

代码示例来源:origin: org.omnifaces/omnipersistence

@Override
@SuppressWarnings("hiding")
public <X, Y> ListJoin<X, Y> joinList(String attributeName, JoinType jt) {
  return getWrapped().joinList(attributeName, jt);
}

代码示例来源:origin: org.eclipse.hawkbit/hawkbit-repository-jpa

@Override
public Page<String> findMessagesByActionStatusId(final Pageable pageable, final long actionStatusId) {
  final CriteriaBuilder cb = entityManager.getCriteriaBuilder();
  final CriteriaQuery<Long> countMsgQuery = cb.createQuery(Long.class);
  final Root<JpaActionStatus> countMsgQueryFrom = countMsgQuery.distinct(true).from(JpaActionStatus.class);
  final ListJoin<JpaActionStatus, String> cJoin = countMsgQueryFrom.joinList("messages", JoinType.LEFT);
  countMsgQuery.select(cb.count(cJoin))
      .where(cb.equal(countMsgQueryFrom.get(JpaActionStatus_.id), actionStatusId));
  final Long totalCount = entityManager.createQuery(countMsgQuery).getSingleResult();
  final CriteriaQuery<String> msgQuery = cb.createQuery(String.class);
  final Root<JpaActionStatus> as = msgQuery.from(JpaActionStatus.class);
  final ListJoin<JpaActionStatus, String> join = as.joinList("messages", JoinType.LEFT);
  final CriteriaQuery<String> selMsgQuery = msgQuery.select(join);
  selMsgQuery.where(cb.equal(as.get(JpaActionStatus_.id), actionStatusId));
  final List<String> result = entityManager.createQuery(selMsgQuery).setFirstResult(pageable.getOffset())
      .setMaxResults(pageable.getPageSize()).getResultList().stream().collect(Collectors.toList());
  return new PageImpl<>(result, pageable, totalCount);
}

代码示例来源:origin: eclipse/hawkbit

@Override
public Page<String> findMessagesByActionStatusId(final Pageable pageable, final long actionStatusId) {
  final CriteriaBuilder cb = entityManager.getCriteriaBuilder();
  final CriteriaQuery<Long> countMsgQuery = cb.createQuery(Long.class);
  final Root<JpaActionStatus> countMsgQueryFrom = countMsgQuery.distinct(true).from(JpaActionStatus.class);
  final ListJoin<JpaActionStatus, String> cJoin = countMsgQueryFrom.joinList("messages", JoinType.LEFT);
  countMsgQuery.select(cb.count(cJoin))
      .where(cb.equal(countMsgQueryFrom.get(JpaActionStatus_.id), actionStatusId));
  final Long totalCount = entityManager.createQuery(countMsgQuery).getSingleResult();
  final CriteriaQuery<String> msgQuery = cb.createQuery(String.class);
  final Root<JpaActionStatus> as = msgQuery.from(JpaActionStatus.class);
  final ListJoin<JpaActionStatus, String> join = as.joinList("messages", JoinType.LEFT);
  final CriteriaQuery<String> selMsgQuery = msgQuery.select(join);
  selMsgQuery.where(cb.equal(as.get(JpaActionStatus_.id), actionStatusId));
  final List<String> result = entityManager.createQuery(selMsgQuery).setFirstResult((int) pageable.getOffset())
      .setMaxResults(pageable.getPageSize()).getResultList().stream().collect(Collectors.toList());
  return new PageImpl<>(result, pageable, totalCount);
}

相关文章