jquery datatable 结合spring mvc mybatis和spring data Pageable分页

原创 2015年09月30日 09:35:31

本文介绍一下结合spring mvc和jquery datatable如何进行分页。


spring mvc 代码

@Controller
@RequestMapping("/appaccess")
public class AppAccessController {
  @Autowired
  private AppAccessService appAccessService;
  
  @RequestMapping(value = "/getJsonData", produces = "text/plain;charset=utf-8")
  @ResponseBody
  public String getJsonData(@RequestParam(required = false) String keywords,
      @RequestParam(required = false) Integer start,
      @RequestParam(required = false) Integer length) {

    Map<String, Object> maps = new HashMap<>();
    PageRequest pagerequset = new PageRequest((start / length), length);
    int totalCount = appAccessService.findListCount(keywords);
    List<AppAccess> results = appAccessService.findList(keywords, pagerequset);
    return JSON.toJSONString(results);
  }
}

参数start和length:start参数表示数据的开始位置,length表示每页数据的数据量,例如点击第一页,那么start=0,length=25,点击第二页,start=25,length=25,这两个参数由jquery datatable传递到后端。


如果是基于spring data Pageable进行分页,那么必须计算pageno,也即是第几页。这个很简单,使用start/length即可得到。PageRequest是Pageable接口的实现类,我们可以构造PageRequest对象,利用该对象的api得到offset和pageSize

 PageRequest pagerequset = new PageRequest((start / length), length));

mybatis 代码

<select id="findList" resultType="com.vip.admin.appaccess.entity.AppAccess">
    select *
    from app_access where 1 = 1
     //省略部分代码
    <if test="pageable.offset >= 0 and pageable.pageSize > 0" >
      limit ${pageable.offset}, ${pageable.pageSize}
    </if>
</select>

至于如何将后端json数据显示到前台,请结合我之前写的Jquery datatable jsonp 显示后台json数据这篇文章。

版权声明:本文为博主原创文章,未经博主允许不得转载。

springmvc 通过 Pageable对象和PageableDefault注解获取分页信息

Pageable 是Spring Data库中定义的一个接口,该接口是所有分页相关信息的一个抽象,通过该接口,我们可以得到和分页相关所有信息(例如pageNumber、pageSize等)。 Page...
  • zsg88
  • zsg88
  • 2017年03月25日 22:57
  • 9876

Spring Data JPA: 分页和排序

之前我们学习了如何使用Jpa访问关系型数据库。通过Jpa大大简化了我们对数据库的开发工作。但是,之前的例子中我们只提到了最简单的CRUD(增删改查)操作。实际上,Spring Data Jpa对于分页...
  • u011848397
  • u011848397
  • 2016年08月08日 14:39
  • 20287

MongoDb 分页 SpringDataPageable MongoRepository

文章背景说明:        在使用Spring的环境下使用MongoDB进行分页查询。 前期准备: 1、在Spring中已经为MongoDB的查询提供了工具包,Maven目录如下所示: ...
  • qq_30553235
  • qq_30553235
  • 2017年07月25日 15:13
  • 759

在Spring Boot中使用Spring-data-jpa实现分页查询

在我们平时的工作中,查询列表在我们的系统中基本随处可见,那么我们如何使用jpa进行多条件查询以及查询列表分页呢?下面我将介绍两种多条件查询方式。 1、引入起步依赖   org.spri...
  • zhengxiangwen
  • zhengxiangwen
  • 2017年03月20日 00:14
  • 12389

SpringBoot JPA实现增删改查、分页、排序、事务操作等功能

今天给大家介绍一下SpringBoot中JPA的一些常用操作,例如:增删改查、分页、排序、事务操作等功能。 下面先来介绍一下JPA中一些常用的查询操作: //And --- 等价于 SQL...
  • linzhiqiang0316
  • linzhiqiang0316
  • 2016年09月23日 16:38
  • 32967

Spring Data Jpa: 分页和排序

之前我们学习了如何使用Jpa访问关系型数据库。通过Jpa大大简化了我们对数据库的开发工作。但是,之前的例子中我们只提到了最简单的CRUD(增删改查)操作。实际上,Spring Data Jpa对于...
  • R28_11
  • R28_11
  • 2016年03月29日 16:11
  • 7188

@PageableDefault

springmvc 通过 Pageable对象和PageableDefault注解获取分页信息 2017-03-25 22:57 627人阅读 评论(0) 收藏 举报  分类: ...
  • qq_27000425
  • qq_27000425
  • 2017年06月07日 10:30
  • 1082

项目总结: MyBatis-paginator实现分页

写在正文前面的一些话最近公司任务比较紧(为自己懒没写博客找的理由还不错), 关于博客的更新停滞了一段时间.最近一直在”仔细揣摩”公司项目的各种历史存储过程,那个苦啊,看的整个人不行不行的,关键是还得把...
  • xubingchuan_blog
  • xubingchuan_blog
  • 2016年03月20日 01:21
  • 3983

JPA中的Page与Pageable

Page是Spring Data提供的一个接口,该接口表示一部分数据的集合以及其相关的下一部分数据、数据总数等相关信息,通过该接口,我们可以得到数据的总体信息(数据总数、总页数...)以及当前数据的信...
  • u011781521
  • u011781521
  • 2017年07月06日 14:08
  • 2710

Jquery Datatable的使用样例(ssm+bootstrsp框架下)服务器端分页

Jquery Datatable的使用样例 (ssm+bootstrsp框架下)服务器端分页
  • u011314442
  • u011314442
  • 2017年02月21日 17:44
  • 1626
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:jquery datatable 结合spring mvc mybatis和spring data Pageable分页
举报原因:
原因补充:

(最多只允许输入30个字)