本文整理汇总了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;未经允许,请勿转载。 |
请发表评论