`
endual
  • 浏览: 3557960 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

spring data jpa 分页

 
阅读更多
public Page<Task> getUserTask(Long userId, Map<String, Object> searchParams, int pageNumber, int pageSize,
String sortType) {
PageRequest pageRequest = buildPageRequest(pageNumber, pageSize, sortType);
Specification<Task> spec = buildSpecification(userId, searchParams);

return taskDao.findAll(spec, pageRequest);
}

/**
* 创建分页请求.
*/
private PageRequest buildPageRequest(int pageNumber, int pagzSize, String sortType) {
Sort sort = null;
if ("auto".equals(sortType)) {
sort = new Sort(Direction.DESC, "id");
} else if ("title".equals(sortType)) {
sort = new Sort(Direction.ASC, "title");
}

return new PageRequest(pageNumber - 1, pagzSize, sort);
}

/**
* 创建动态查询条件组合.
*/
private Specification<Task> buildSpecification(Long userId, Map<String, Object> searchParams) {
Map<String, SearchFilter> filters = SearchFilter.parse(searchParams);
filters.put("user.id", new SearchFilter("user.id", Operator.EQ, userId));
Specification<Task> spec = DynamicSpecifications.bySearchFilter(filters.values(), Task.class);
return spec;
}
分享到:
评论
2 楼 牛BB 2015-09-15  
searchParams  这个参数到这一步Map<String, SearchFilter> filters = SearchFilter.parse(searchParams); 我就报错,不清楚怎么回事。有什么要求吗?或者能否贴出action部分的代码啊。 
1 楼 2047699523 2015-04-29  
spring data jpa相关代码demo下载:http://www.zuidaima.com/share/kjpa-p1-s1.htm

相关推荐

    spring data jpa分页查询示例代码

    Spring Data JPA 分页查询示例代码 Spring Data JPA 是一个基于 Java Persistence API(JPA)的数据访问技术,提供了一个简洁的方式来访问关系数据库。分页查询是数据库查询中的一种常见操作,Spring Data JPA 提供...

    Spring Data JPA中文文档[1.4.3]_springdatajpa_erlang_waitxpf_

    Spring Data JPA 提供了内置的支持,可以在查询方法中通过 `Pageable` 参数实现分页和排序。 5. **Auditing**:Spring Data JPA 提供了审计功能,可以自动记录实体的创建时间和修改时间。这可以通过 `@CreatedDate`...

    Spring Data JPA 笔记

    Spring Data JPA 是一个强大的框架,它简化了Java应用程序与数据库之间的交互,是Spring生态中的重要组成部分。通过使用Spring Data JPA,开发者可以避免编写大量的JPA(Java Persistence API)和SQL代码,专注于...

    spring注解+spring data jpa文档+JPA文档.rar

    Spring框架的核心特性包括依赖注入(DI)和面向切面编程(AOP),并且它还提供了对数据库操作的支持,这主要通过Spring Data JPA和Java Persistence API(JPA)实现。 Spring注解是Spring框架中的一大特色,它极大...

    Spring Data JPA从入门到精通

    9. **数据分页与排序**:Spring Data JPA提供了PagingAndSortingRepository接口,支持分页查询和结果排序。 10. **关联关系**:包括一对一(@OneToOne)、一对多(@OneToMany)、多对一(@ManyToOne)、多对多(@...

    Spring Data JPA的优点和难点.pdf

    Spring Data JPA是Spring生态中的一个强大ORM框架,它极大地提高了Java开发者在处理数据库操作时的效率。Spring Data JPA的主要优点在于其高度的开发效率、成熟的语法结构以及与Spring框架的紧密集成。 1. **开发...

    Spring+Spring MVC+SpringData JPA整合完成增删改查,翻页实例.zip

    在这个"Spring+Spring MVC+SpringData JPA整合完成增删改查,翻页实例"中,我们将深入探讨这三个组件如何协同工作,实现高效的数据管理与用户交互。 首先,Spring MVC是Spring框架的一个模块,专门用于构建Web应用...

    Spring Data JPA.zip

    Spring Data JPA 提供了分页和排序的支持,可以通过 `Pageable` 参数实现。 **10. 异常处理** 在使用 Spring Data JPA 时,可能会遇到一些特定的异常,如 `EntityNotFoundException`(未找到实体)、`...

    spring data jpa 教程

    同时,Spring Data JPA 也支持一些高级特性,例如分页和排序,使得数据处理更加灵活。 第二章:JpaRepository 基本功能 JpaRepository 是 Spring Data JPA 中提供的一个基础接口,它扩展自 ...

    Spring Data JPA中文文档[1.4.3].zip

    6. **分页和排序**:Spring Data JPA支持在查询结果中进行分页和排序,可以方便地通过Repository接口实现。 7. **存储过程**:Spring Data JPA也支持调用数据库存储过程,并将其结果转换为Java对象。 8. **JPA实体...

    Spring Data JPA分页复合查询原理解析

    Spring Data JPA分页复合查询原理解析 Spring Data JPA是一种基于JPA的数据访问技术,旨在简化数据访问层的实现,减少开发人员的工作量。在Spring Data JPA中,开发人员可以通过编写repository接口,包括自定义查找...

    其实spring data jpa比mybatis更好用.zip_JPA mybatis

    标题"其实spring data jpa比mybatis更好用.zip_JPA mybatis"指出本主题将探讨Spring Data JPA与MyBatis之间的比较,并暗示在某些方面,Spring Data JPA可能更为优越。描述中提到"全方位介绍jpa",表明内容将深入讲解...

    spring data jpa简单案例

    在实际项目中,你可能需要处理更复杂的查询,如分页、排序、聚合等,Spring Data JPA 都能提供相应的支持。同时,通过自定义查询方法,你可以轻松扩展功能,而无需编写繁琐的 SQL 语句。 **标签解析:** - **源码**...

    Spring Data JPA入门项目02

    在本项目"Spring Data JPA入门项目02"中,我们将深入探讨如何使用Spring Data JPA进行查询操作,包括排序和分页。Spring Data JPA是Spring Framework的一个模块,它为Java Persistence API (JPA) 提供了一种更加便捷...

    spring学习:spring data jpa

    3. **Pageable 和 Sort**:Spring Data JPA支持分页查询和排序。`Pageable`接口提供了页码和每页大小的设置,`Sort`接口用于定义排序规则。 4. **JPQL 和 Criteria API**:如果需要更复杂的查询,可以使用JPQL...

    SpringData JPA 参考文档PDF 英文

    Spring Data扩展(Spring Data extensions)提供了对Web功能的支持,例如基础的Web支持、对分页实体的超媒体支持、仓库填充器、遗留Web支持以及Spring MVC中的领域类Web绑定等。 JPA仓库部分(JPA Repositories)...

    Spring Data JPA中文文档[1.4.3]

    Spring Data JPA是Spring框架的一个重要模块,专为简化Java持久层编程而设计。它提供了对JPA(Java Persistence API)的高度抽象,使得开发者能够更高效地与数据库进行交互,无需编写大量的DAO(Data Access Object...

    Spring Data JPA Examples 官方源码

    Spring Data JPA提供了`Pageable`接口,用于实现分页查询。通过`PageRequest`可以设置分页参数,如页码和每页大小,返回的`Page`对象包含了当前页的数据以及分页信息。 通过学习和分析这些官方源码,开发者可以更...

    spring data jpa入门实例

    ### 六、Spring Data JPA 1.1 新特性及分页介绍 Spring Data JPA 1.1 引入了一些新特性,例如增强的分页支持。使用 `Pageable` 接口可以实现高效的分页查询: ```java Page&lt;User&gt; users = userRepository.findAll...

Global site tag (gtag.js) - Google Analytics