问题描述:相同的查寻条件, 分页显示的结果和.net版本的分页结果数量一样,排序不一样, 不同的页有相同的数据。比如:第2面和第3页都有同一条相同的数据。

核心代码:

 //自己实现
int totalRows = mapper.selectCountByExample(example);
pager.setTotalRows(totalRows);
int offset=(pager.getPageNo()-1)*pager.getPageSize();
int limit = pager.getPageSize();
RowBounds rowBounds = new RowBounds(offset,limit);
List<T> list = mapper.selectByExampleAndRowBounds(example,rowBounds);

生成的sql语句:

   SELECT *
FROM (SELECT TMP_PAGE.*, ROWNUM ROW_ID
FROM (SELECT *
FROM ORDER_statistics
WHERE userid = 2458 and
(createDate >= to_date('2017-10-01','yyyy-MM-dd') and createDate<= to_date('2017-10-10','yyyy-MM-dd') )
order by TongJiDate DESC) TMP_PAGE
WHERE ROWNUM <= 10)
WHERE ROW_ID > 5

当TongJiDate 同一时间有很多数据的时候,会导致。第二页和第三页都显示出一个想同的数据,(也可能是我使用的方式不对,目前还不找到)

.net版本的框架生成的语句:

 SELECT *
FROM (SELECT ROWNUM RN, H.*
FROM ((SELECT *
FROM ORDER_statistics
WHERE OWNER_CENTER_ID = 2458
AND (createDate >= to_date('2017-10-01', 'yyyy-mm-dd'))
AND (createDate <= to_date('2017-10-10', 'yyyy-mm-dd'))
ORDER BY TongJiDate desc) H)) Z
WHERE Z.RN <= 10
AND Z.RN > 5

在界面显示的,没有任务问题,sql也比较符合常人思维逻辑。 个人觉得

mybatis 分页问题 (个人认为算是个bug)的更多相关文章

  1. Mybatis分页插件PageHelper的配置和使用方法

     Mybatis分页插件PageHelper的配置和使用方法 前言 在web开发过程中涉及到表格时,例如dataTable,就会产生分页的需求,通常我们将分页方式分为两种:前端分页和后端分页. 前端分 ...

  2. Mybatis学习---Mybatis分页插件 - PageHelper

    1. Mybatis分页插件 - PageHelper说明 如果你也在用Mybatis,建议尝试该分页插件,这个一定是最方便使用的分页插件. 该插件目前支持Oracle,Mysql,MariaDB,S ...

  3. 基于Mybatis分页插件PageHelper

    基于Mybatis分页插件PageHelper 1.分页插件使用 1.POM依赖 PageHelper的依赖如下.需要新的版本可以去maven上自行选择 <!-- PageHelper 插件分页 ...

  4. Mybatis分页插件

    mybatis配置 <!-- mybatis分页插件 --> <bean id="pagehelper" class="com.github.pageh ...

  5. Mybatis分页和Spring的集成

    写了一个Mybatis分页控件,在这记录一下使用方式. 在Maven中加入依赖: ? 1 2 3 4 5 6 7 8 9 <dependencies>   ...     <depe ...

  6. mybatis分页插件以及懒加载

    1.   延迟加载 延迟加载的意义在于,虽然是关联查询,但不是及时将关联的数据查询出来,而且在需要的时候进行查询. 开启延迟加载: <setting name="lazyLoading ...

  7. Mybatis分页插件PageHelper使用

    一. Mybatis分页插件PageHelper使用  1.不使用插件如何分页: 使用mybatis实现: 1)接口: List<Student> selectStudent(Map< ...

  8. mybatis分页练手

    最近碰到个需求,要做个透明的mybatis分页功能,描述如下:目标:搜索列表的Controller action要和原先保持一样,并且返回的json需要有分页信息,如: @ResponseBody @ ...

  9. SSM 使用 mybatis 分页插件 pagehepler 实现分页

    使用分页插件的原因,简化了sql代码的写法,实现较好的物理分页,比写一段完整的分页sql代码,也能减少了误差性. Mybatis分页插件 demo 项目地址:https://gitee.com/fre ...

随机推荐

  1. Linux Expect自动化交互脚本简介

    相关资料 维基百科:Expect SourceForge:The Expect Home Page TCL脚本言语简介 由于Expect是建立在TCL语言基础上的一个工具,因此首先检查一些TCL常见语 ...

  2. iOS蓝牙心得

    1.获取蓝牙mac地址 因为安卓不能得到uuid,所以,在要同步的时候要将uuid转换成mac地址,下面是转换方法 [peripheral discoverServices:@[[CBUUID UUI ...

  3. input中range相关操作

    利用mousover触发函数对range的操作练习 <!DOCTYPE html> <html> <head> <meta charset="utf ...

  4. Centos7搭建swarm集群

    1. 准备 两台虚拟机,IP分别为: 192.168.1.104 192.168.1.105 保证能互相 ping 通 2. 修改虚拟机的 host,分别任 c1.c2 在 192.168.1.105 ...

  5. 最常用前端框架BootStrap——栅格系统

      前  言   Bootstrap 提供了一套响应式.移动设备优先的流式栅格系统,随着屏幕或视口(viewport)尺寸的增加,系统会自动分为最多12列.它包含了易于使用的预定义类,还有强大的mix ...

  6. 通过JQuery实现Ajax代码

    今天早上遇到了这个问题,结果我写的顺序是惨不忍睹啊,所有现在留个模版以示标准. $(function(){ $.ajax({ url : "Servlet", //传地址 type ...

  7. python中strip函数的用法

    python中往往使用剥除函数strip()来对用户的输入进行清理.strip函数的最一般形式为: str.strip('序列') 其中,序列是一段字符串,该函数表示从头或者从尾部开始进行扫描,如果扫 ...

  8. System.Object简介

    Object中的公共方法解释: 公共方法: Equals: public class Object { public virtual Boolean Equals(Object obj) { //如果 ...

  9. IBM Minus One 简单字符处理

    IBM Minus One Time Limit: 2 Seconds      Memory Limit: 65536 KB You may have heard of the book '2001 ...

  10. WPF 中的 Pack URI地(资源文件加载)

    参考资源网http://msdn.microsoft.com/zh-cn/library/aa970069.aspx#Absolute_vs_Relative_Pack_URIs 在 Windows ...