• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

Java QueryUtils类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Java中org.springframework.data.jpa.repository.query.QueryUtils的典型用法代码示例。如果您正苦于以下问题:Java QueryUtils类的具体用法?Java QueryUtils怎么用?Java QueryUtils使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



QueryUtils类属于org.springframework.data.jpa.repository.query包,在下文中一共展示了QueryUtils类的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。

示例1: applyOrder

import org.springframework.data.jpa.repository.query.QueryUtils; //导入依赖的package包/类
/**
 * Apply ordering criteria.
 */
private <T> void applyOrder(final UiPageRequest uiPageRequest, final Map<String, String> mapping, final CriteriaBuilder builder,
		final CriteriaQuery<T> query, final Root<T> root) {
	// Apply the sort
	if (uiPageRequest.getUiSort() != null) {

		// Need to order the result
		final UiSort uiSort = uiPageRequest.getUiSort();
		final String ormColumn = mapping.get(uiSort.getColumn());
		if (ormColumn != null) {

			// ORM column is validated
			final Sort sort = new Sort(uiSort.getDirection(), mapping.get(uiSort.getColumn()));
			query.orderBy(QueryUtils.toOrders(sort, root, builder));
		}
	}
}
 
开发者ID:ligoj,项目名称:bootstrap,代码行数:20,代码来源:PaginationDao.java


示例2: list

import org.springframework.data.jpa.repository.query.QueryUtils; //导入依赖的package包/类
@Override
public <T> List<T> list(Pageable pageable) {
	if (parent != null) {
		applyPredicateToCriteria(sq);
		return parent.list(pageable);
	}
	if (pageable == null) {
		return list();
	} else {
		Sort sort = pageable.getSort();
		orders.addAll(QueryUtils.toOrders(sort, root, cb));
		applyPredicateToCriteria(criteria);
		TypedQuery<?> query = em.createQuery(criteria);
		
		query.setFirstResult(pageable.getOffset());
		query.setMaxResults(pageable.getPageSize());

		return transform(query, false);
	}
}
 
开发者ID:muxiangqiu,项目名称:linq,代码行数:21,代码来源:LinqImpl.java


示例3: doCreateQuery

import org.springframework.data.jpa.repository.query.QueryUtils; //导入依赖的package包/类
@Override
protected Query doCreateQuery(Object[] values) {
    String nativeQuery = getQuery(values);
    JpaParameters parameters = getQueryMethod().getParameters();
    ParameterAccessor accessor = new ParametersParameterAccessor(parameters, values);
    String sortedQueryString = QueryUtils
            .applySorting(nativeQuery, accessor.getSort(), QueryUtils.detectAlias(nativeQuery));
    Query query = bind(createJpaQuery(sortedQueryString), values);
    if (parameters.hasPageableParameter()) {
        Pageable pageable = (Pageable) (values[parameters.getPageableIndex()]);
        if (pageable != null) {
            query.setFirstResult(pageable.getOffset());
            query.setMaxResults(pageable.getPageSize());
        }
    }
    return query;
}
 
开发者ID:slyak,项目名称:spring-data-jpa-extra,代码行数:18,代码来源:FreemarkerTemplateQuery.java


示例4: findAll

import org.springframework.data.jpa.repository.query.QueryUtils; //导入依赖的package包/类
@SuppressWarnings("unchecked")
/**
 * 分页条件查询
 * @param cq 条件
 * @param pageable 分页信息
 * @param <T> 领域类(实体类)范型
 * @return 分页结果
 */
public static <T> Page<T> findAll(CriteriaQuery<T> cq, Pageable pageable) {
	Class<T> domainClass = cq.getResultType();
	Root<T> root;
	if (CollectionUtils.isEmpty(cq.getRoots())) {
		root = cq.from(domainClass);
	} else {
		root = (Root<T>) cq.getRoots().iterator().next();
	}
	EntityManager em = getEntityManager(domainClass);
	if (pageable == null) {
		List<T> list = findAll(cq);
		return new PageImpl<T>(list);
	} else {
		Sort sort = pageable.getSort();
		cq.orderBy(QueryUtils.toOrders(sort, root, em.getCriteriaBuilder()));
		TypedQuery<T> query = em.createQuery(cq);
		
		query.setFirstResult(pageable.getOffset());
		query.setMaxResults(pageable.getPageSize());

		Long total = count(cq);
		List<T> content = total > pageable.getOffset() ? query.getResultList() : Collections.<T> emptyList();

		return new PageImpl<T>(content, pageable, total);
	}
}
 
开发者ID:muxiangqiu,项目名称:linq,代码行数:35,代码来源:JpaUtil.java


示例5: paging

import org.springframework.data.jpa.repository.query.QueryUtils; //导入依赖的package包/类
@Override
public <T> Page<T> paging(Pageable pageable) {
	if (parent != null) {
		applyPredicateToCriteria(sq);
		return parent.paging(pageable);
	}
	List<T> list;
	if (pageable == null) {
		list = list();
		return new PageImpl<T>(list);
	} else {
		Sort sort = pageable.getSort();
		if (sort != null) {
			orders.addAll(QueryUtils.toOrders(sort, root, cb));
		}
		applyPredicateToCriteria(criteria);
		TypedQuery<?> query = em.createQuery(criteria);
		
		query.setFirstResult(pageable.getOffset());
		query.setMaxResults(pageable.getPageSize());

		Long total = JpaUtil.count(criteria);
		List<T> content = Collections.<T> emptyList();
		if (total > pageable.getOffset()) {
			content = transform(query, false);
		}

		return new PageImpl<T>(content, pageable, total);
	}
}
 
开发者ID:muxiangqiu,项目名称:linq,代码行数:31,代码来源:LinqImpl.java


示例6: readPage

import org.springframework.data.jpa.repository.query.QueryUtils; //导入依赖的package包/类
@Override
protected Page<T> readPage(final TypedQuery<T> query, final Pageable pageable, final Specification<T> spec) {
    query.setFirstResult(pageable.getOffset());
    query.setMaxResults(pageable.getPageSize());

    final Long total = QueryUtils.executeCountQuery(getCountQuery(spec));
    final List<T> content = total > pageable.getOffset() ? query.getResultList() : Collections.<T>emptyList();

    if (total > maximumRecords) {
        return new CustomPageImpl<>(content, pageable, maximumRecords, String.format(ERROR_MESSAGE, maximumRecords));
    } else {
        return new PageImpl<>(content, pageable, total);
    }
}
 
开发者ID:MinBZK,项目名称:OperatieBRP,代码行数:15,代码来源:CustomSimpleMaxedJpaRepository.java


示例7: buildQuery

import org.springframework.data.jpa.repository.query.QueryUtils; //导入依赖的package包/类
@Nullable
private <U> TypedQuery<U> buildQuery(EntityManager entityManager, CriteriaQuery<U> criteriaQuery, Root<T> root, @Nullable Integer maxResults) {
    if (this.hasSort()) {
        criteriaQuery.orderBy(QueryUtils.toOrders(this.sort, root, this.criteriaBuilder));
    }

    return this.buildQuery(entityManager, EntityManager::createQuery, criteriaQuery, CriteriaQuery::where, root, maxResults);
}
 
开发者ID:esacinc,项目名称:sdcct,代码行数:9,代码来源:SdcctCriteriaImpl.java


示例8: addSortClause

import org.springframework.data.jpa.repository.query.QueryUtils; //导入依赖的package包/类
public static <T, K> void addSortClause(Optional<Sort> sort, final CriteriaBuilder criteriaBuilder,
    final CriteriaQuery<T> criteriaQuery, final Root<K> root) {

  if (sort.isPresent()) {
    List<javax.persistence.criteria.Order> orderList = QueryUtils.toOrders(sort.get(), root, criteriaBuilder);
    criteriaQuery.orderBy(orderList);
  }
}
 
开发者ID:BandwidthOnDemand,项目名称:bandwidth-on-demand,代码行数:9,代码来源:CustomRepoHelper.java


示例9: find

import org.springframework.data.jpa.repository.query.QueryUtils; //导入依赖的package包/类
/**
 * JPQL でページング検索します。
 * <p>カウント句がうまく構築されない時はPagination#ignoreTotalをtrueにして、
 * 別途通常の検索でトータル件数を算出するようにして下さい。
 * <p>page に設定されたソート条件は無視されるので、 qlString 構築時に明示的な設定をしてください。
 * <p>args に Map を指定した時は名前付き引数として取り扱います。 ( Map のキーには文字列を指定してください )
 */
@SuppressWarnings("unchecked")
public <T> PagingList<T> find(final String qlString, final Pagination page, final Object... args) {
    long total = page.isIgnoreTotal() ? -1L : load(QueryUtils.createCountQueryFor(qlString), args);
    List<T> list = bindArgs(em.createQuery(qlString), page, args).getResultList();
    return new PagingList<>(list, new Pagination(page, total));
}
 
开发者ID:jkazama,项目名称:sample-boot-micro,代码行数:14,代码来源:OrmTemplate.java



注:本文中的org.springframework.data.jpa.repository.query.QueryUtils类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java TimedRotationPolicy类代码示例发布时间:2022-05-23
下一篇:
Java ContainerStatus类代码示例发布时间:2022-05-23
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap