基于JPA的分页/排序实现

Page<ClassOrder> findByMember_MemberID(long id, Pageable pageable);

Controller代码:
 public ModelAndView showsignupclass(int page){
        ModelAndView mv=new ModelAndView("/user/user-showSignupClass.btl");
        Member member=memberRepository.findAll().get(0);
        int size=5; 
    //按报名时间倒序     Sort sort = new Sort(Sort.Direction.DESC,"time");
        PageRequest pageable=PageRequest.of(page,size,sort);
        Page<ClassOrder> pageObject=classOrderRepository.findByMember_MemberID(member.getMemberID(),pageable);    //获取pageObject的内容
        List<ClassOrder> classOrders=pageObject.getContent();
        //getTotalPages()返回总的页数
        int totalPage=pageObject.getTotalPages();
        //getTotalElements()返回总数
        long count=pageObject.getTotalElements();
        mv.addObject("count", count);
        mv.addObject("totalPage",totalPage);
        mv.addObject("classOrders",classOrders);
        return mv;
    }

  



原文地址:https://www.cnblogs.com/zhu573514187/p/9439427.html

时间: 2024-08-02 15:43:59

基于JPA的分页/排序实现的相关文章

随便说说Spring Data JPA(包含分页,复合查询)

最近没事做,闲着也是闲着,随便写写,自己说说,不提供参考价值. Spring Data JPA是Spring Data家族的一部分,可以轻松实现基于JPA的存储库. 此模块处理对基于JPA的数据访问层的增强支持. 它使构建使用数据访问技术的Spring驱动应用程序变得更加容易. 在相当长的一段时间内,实现应用程序的数据访问层一直很麻烦. 必须编写太多样板代码来执行简单查询以及执行分页和审计. Spring Data JPA旨在通过减少实际需要的工作量来显著改善数据访问层的实现. 作为开发人员,您

基于Angularjs实现分页

基于Angularjs实现分页 http://www.cnblogs.com/sword-successful/archive/2015/06/28/4605222.html

基于比较的内部排序总结

★ 基于“比较”操作的内部排序性能大PK 我们首先总结一下<排序结构专题1-4>中的十种方法的性能((N个关键字的待排序列)): 排序方法        平均时间   最坏时间    辅助存储空间   稳定性   直接插入排序 O(N^2)   O(N^2)    O(1)                √      折半插入排序 O(N^2) O(N^2)  O(1)      √ 希尔排序  O(N*logN) O(N*logN) O(1)        × 起泡排序        O(N

基于非比较的排序:计数排序(countSort),桶排序(bucketSort),基数排序(radixSort)

计数排序 条件:要排序的数组的元素必须是在一定范围的,比如是1~100.在排序之前我们必须知道数组元素的范围. 思路:顾名思义:就是用一个数组来计数的. 步骤: 1.用一个数组来计数count[ ],将要排序的数组arr[ ]的元素记为数组count[ ]数组的下标,如果数组arr[]中有两个数相同就在count[]++.如count[arr[i]]++. 2. 再一次遍历数组count[ ],将count[i]  +=  count[i-1]+count[i-2]+....+count[0],

mysql 两表联查分页排序效率优化

数据库中有两张表 t1 存储消息信息 +-----------+------------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-----------+------------------+------+-----+---------+----------------+ | id | int(10) unsigned | NO | PRI |

基于bootstrap的分页

由于之前写了一个局部刷新的分页,为了自己以后工作方便所以再上传一个通用的分页,基于bootstrap的分页,引用和上次写的局部刷新一样,在这里就不写了 js代码 在页面加载的时候执行 var options = { bootstrapMajorVersion: 3,//版本 currentPage: @Convert.ToInt64(Model.PageNumber) ,//当前页数 numberOfPages: 10,//设置显示的页码数 totalPages: @Convert.ToInt6

基于Dapper的分页实现,支持筛选,排序,结果集总数,非存储过程

简介 之前事先搜索了下博客园上关于Dapper分页的实现,有是有,但要么是基于存储过程,要么支持分页,而不支持排序,或者搜索条件不是那么容易维护. 代码 首先先上代码: https://github.com/jinweijie/Dapper.PagingSample 方法定义 以下是我的一个分页的实现,虽然不是泛型(因为考虑到where条件以及sql语句的搭配),但是应该可以算是比较通用的了,方法定义如下: public Tuple<IEnumerable<Log>, int> F

基于比较的常用排序算法总结

基于比较的排序算法,应该是最符合人们直觉的方法.在各种算法的技术书上,已经证明了基于比较的排序算法的时间最优复杂度为O(nlogn). 下面是几种常见的基于比较的排序算法: 1. 选择排序:这应该是最直观的排序方法.在排序n个元素时,第一次遍历,找到最小的元素,将其与第一个元素互换:第二次遍历,找到次小的元素,将其与第二个元素交换:直至剩下最后一个元素. 2. 冒泡排序:这应该是我们学到的第一种排序算法.基本思想就是,通过依次比较相邻的两个元素,如后值比前值小,则交换这两个值,小值被交换到前面,

SpringData JPA查询分页demo

SpringData JPA 的 PagingAndSortingRepository接口已经提供了对分页的支持,查询的时候我们只需要传入一个 org.springframework.data.domain.Pageable 接口的实现类,指定PageNumber和pageSize即可 springData包中的 PageRequest类已经实现了Pageable接口,我们可以直接使用下边是部分代码: DAO: package com.jiaoyiping.jdjy.sourcecode.dao