mybatis自定义排序_oracle排序分页查询

mybatis自定义排序_oracle排序分页查询importtk.mybatis.mapper.entity.Example;importcom.github.pagehelper.PageHelper;…@OverridepublicList<Repayxxx>listRepaymentPlan(Integerstart){Exampleex…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。 

   import tk.mybatis.mapper.entity.Example;
   import com.github.pagehelper.PageHelper;

...

    @Override
    public List<Repayxxx> listRepaymentPlan(Integer start) {

    
        Example example = new Example(Repayxxx.class);
        // 排序
        example.orderBy("id");
        // 条件查询
        example.createCriteria()
                .andNotEqualTo("repayxxx", 3)
                .andLessThanOrEqualTo("xxxRepayDate", new Date());
        // 分页
        PageHelper.startPage(start, 20); // 每次查询20条

        return repaymentPlanMapper.selectByExample(example);
    }

关于排序还有这些写法:

// 注意:排序使用的是表中的列名,不是对象属性名。
example.setOrderByClause("time DESC");

example.setOrderByClause ("product_code desc , product_name desc");

// 注意:排序使用的是对象属性。
example.orderBy('id').asc().orderBy('name').desc();

2. PageHelper 使用详解见文章:分页插件pageHelpler的使用(ssm框架中)服务器端分页

3. 更多关于 Example 的使用说明见文章:

java 查询功能实现的八种方式

MyBatis : Mapper 接口以及 Example 使用实例、详解 

 

4. 当只是查询数据,不需要返回总条数时可选择此方法:

PageHelper.startPage(第几页, 20,false); // 每次查询20条

当数据量极大时,可以快速查询,忽略总条数的查询,减少查询时间。

以下是该方法原码实现:

mybatis自定义排序_oracle排序分页查询

 

————————————————-

2019.5.13 后记 : 

1)分页的写法 下图中黄框中的写法运行 比红框中 快,不知道是不是插件本身也会有费时:

mybatis自定义排序_oracle排序分页查询

2)再补充一种分页方式,mybatis 自带的 RowBounds:

 public List<RepayPlan> listRepayPlan(int start) {
        
        Example example = new Example(RepayPlan.class);
        example.orderBy("id "); // 按id排序
        example.createCriteria()
                .andNotEqualTo("repayxxx", 3)
                .andLessThanOrEqualTo("xxxRepayDate", new Date());
        RowBounds rowBounds = new RowBounds(start, 20); // 每次查询20条
        return epaymentPlanMapper.selectByExampleAndRowBounds(example,rowBounds);
    }

推荐用 RowBounds :mybatis 自带的,且速度快 。个人运行,后 2 种分页明显比 PageHelper 快。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/190850.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • js 字符串转json对象_json字符串转java对象

    js 字符串转json对象_json字符串转java对象js对象转json字符串将js对象转为json格式的字符串,可以用JSON.stringify方法。varuser1={‘height’:170,’name’:’张三’};varuser1Str=JSON.stringify(user1)console.info(user1Str)typeofuser1Str使用typeof来获取对象user1Str的类型,能看到控制台输出的user1的值以及它的类型string。{“height”:170,“name”:“张三”}“s

    2022年9月17日
    1
  • opencv-阈值处理

    opencv-阈值处理

    2022年1月8日
    39
  • 基于Spring MVC + Spring + MyBatis的【图书信息管理系统(一)】

    基于Spring MVC + Spring + MyBatis的【图书信息管理系统(一)】资源下载:https://download.csdn.net/download/weixin_44893902/33163160一、语言和环境1.实现语言:JAVA语言。2.环境要求:MyEclipse/Eclipse+Tomcat+MySql。3.使用技术:SpringMVC+Spring+Mybatis。二、实现功能随着校内图书馆的发展,现需要制作图书信息管理系统,主要功能如下:1.首页默认显示所有图书信息2.鼠标悬停某行数据时,以线性过渡动画显示光棒效果3.用.

    2022年6月3日
    37
  • 添加了ValidateRequest=”false”仍然报错的解决办法[通俗易懂]

    添加了ValidateRequest=”false”仍然报错的解决办法[通俗易懂]在文本框传递HTML代码时默认是不允许的,会提示有潜在危险字符,只要在页头的指令中加ValidateRequest=”false”就可以解决,如下所示:或查看配置文件中是否有同样的设置,如:若上述操作后仍然报错,可在配置文件中加入节如下:

    2022年6月9日
    32
  • mhdd测试hdd硬盘软件,硬盘检测工具mhdd

    mhdd测试hdd硬盘软件,硬盘检测工具mhdd硬盘检测工具mhdd是一款能够修复坏道的专业硬盘检测工具,MHDD硬盘检测工具可以不依赖于主板BIOS直接访问IDE口,可以访问128G的超大容量硬盘,即使你用的是286电脑,无需BIOS支持,也无需任何中断支持。且MHDD还能够帮使用者修复坏轨,让使用者能够继续延续该硬盘的生命余光。软件功能:1、无论以CHS还是以LBA模式,都可以访问到128G的超大容量硬盘(可访问的扇区范围从512到3743…

    2022年7月12日
    18
  • HSQL测试_qt测试工具

    HSQL测试_qt测试工具采用C/S的模式操作HSQL数据库:   1、建立数据库的目录:      e:\hsqldb目录下建立mydb.properties和mydb.script文件,如果目录下不建立数据库文件则会自动产生这些文件;如果需要在建立库的同时就让数据库      的对象(表等)建立好,则需要在mydb.script中写入这些执行的脚本语句,数据库启动时会读取脚本文件并执行这些脚本语句; …

    2022年9月22日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号