`
leili
  • 浏览: 179977 次
社区版块
存档分类
最新评论

ibatis的物理分页

 
阅读更多

最近研究了下ibatis支持的物理分页,貌似大家都爱好物理分页,对逻辑分页不怎么看好,主要是由于数据量很大的时候,逻辑分页太耗时间啦,物理分页充分发挥其作用,其实在大多数情况下(90%)都是用的物理分页。

ibatis 带有专门的分页执行器,只要继承该sql执行器---> com.ibatis.sqlmap.engine.execution.SqlExecutor 就

可以实现分页了。废话不多说,直接上代码

下面是ibatis的SQL执行器代码



现在定义数据库方言:

方言的实现类(本例以mysql为例):


通过以上3个类就可以实现ibatis的物理分页,在执行 查询的时候调用 List<ProductModel> lst = sqlMapClient.queryForList("pv_product_info.queryProduct", param, skipResults, maxResults);

param :查询条件
skipResults: 查询的起始位置
maxResults:每页显示的行数

注: 转载请附上原文链接,谢谢

分享到:
评论

相关推荐

    ibatis物理分页jar

    ibatis 物理分页jar ,与官方ibatis不冲突,可直接使用。

    对IBatis分页的改进,使ibatis支持hibernate式的物理分页

    公司的大部分项目都开始使用IBatis作为O/R Mapping了,但是在使用的过程中也发现了很多不方便和存在争议的地方,其中一个不方便的地方就是分页,目前的处理方式都是在sqlMap中写针对特定数据库的物理分页Sql语句,对于...

    修改ibatis源代码实现物理分页

    因此,我们需要通过修改Ibatis的源代码来实现物理分页,以提高查询效率。 物理分页是直接在数据库层面进行分页,避免了将所有数据加载到内存中的问题。下面我们将详细探讨如何在Ibatis中实现物理分页。 首先,了解...

    对IBatis分页的改进,使ibatis支持hibernate式的物理分页.doc

    针对iBatis的这一局限,我们可以尝试在不修改iBatis源码的情况下,引入类似于Hibernate的物理分页机制。这个过程主要涉及对SQL执行流程的拦截和改造。首先,我们需要了解iBatis执行SQL的关键类——`...

    spring-ibatis-ext-plugin.1.0.0 扩展ibaits原生SQL

    本文讲述的就是如何在不重新编译ibatis源码的前提下,为ibatis引入hibernate式的物理分页机制。 基本思路就是找到ibatis执行sql的地方,截获sql并重新组装sql。通过分析ibatis源码知道,最终负责执行sql的类是 ...

    利用Mybatis的动态SQL实现物理分页.pdf

    【标题】:“利用Mybatis的动态SQL实现物理分页” 【描述】:本文主要探讨了在实际项目中如何利用Mybatis的动态SQL功能来解决大数据量下的物理分页问题,以避免内存溢出。 【标签】:“SQL 数据库 数据处理 参考...

    spring ibatis

    spring ibatis 已经实现物理分页,eclipse 工程 直接导入即可,默认spring 引用注解,里面含对应bean配置(已经注释了),典型的spring MVC+ibatis ,内置junit 测试用例

    ibatis-sqlmap-2.3.4.741-sources.zip_4 3 2 1_ibatis-sqlm_ibatis-s

    描述中提到了针对iBATIS-2.3.4.726的改进,包括物理分页功能、支持缓存以及读写分离,同时还增加了对多种数据库的透明支持。 iBATIS SQLMap 是一个开源的Java框架,它将SQL语句与Java代码分离,提供了更灵活的...

    oracle分页(ibatis-2.3.4.726.jar).rar

    在Java开发中,iBATIS作为一款流行的数据访问框架,其早期版本(如2.3.4.726)并未内置物理分页功能,而是依赖于SQL的逻辑分页,这在处理大量数据时可能会导致效率低下,因为逻辑分页会将所有结果集加载到内存中再...

    mybatis分页插件源码

    - 分页策略的理解,例如物理分页(数据库层面的分页)和逻辑分页(应用层面的分页)的差异。 - 如何在业务层和服务层设计以充分利用分页插件,同时保持代码的简洁性和可维护性。 通过对 MyBatis 分页插件源码的分析...

    Hitis-src-1.0.jar

    (5)在ibatis中,想做物理分页,你必须在写一个列表sql,还要写一个90%一样的总页数的sql,不仅如此,你还要在列表sql外包上一层分页sql代码,你不觉得麻烦吗?但Hitis,直接返回给你实际执行的sql和paramters数组,...

    Hitis V1.2.2

    (5)在ibatis中,想做物理分页,你必须在写一个列表sql,还要写一个90%一样的总页数的sql,不仅如此,你还要在列表sql外包上一层分页sql代码,你不觉得麻烦吗?但Hitis,直接返回给你实际执行的sql和paramters数组,...

    淘淘商城分页jar包

    4. **性能优化**:PageHelper采用了物理分页的方式,避免了全表扫描,提高了查询效率。同时,它还支持合理的排序方式,确保分页结果的准确性。 5. **灵活配置**:PageHelper提供了丰富的配置选项,如是否开启...

    Hitis V1.1

    (5)在ibatis中,想做物理分页,你必须在写一个列表sql,还要写一个90%一样的总页数的sql,不仅如此,你还要在列表sql外包上一层分页sql代码,你不觉得麻烦吗?但Hitis,直接返回给你实际执行的sql和paramters数组,...

    Hitis V1.2.1

    (5)在ibatis中,想做物理分页,你必须在写一个列表sql,还要写一个90%一样的总页数的sql,不仅如此,你还要在列表sql外包上一层分页sql代码,你不觉得麻烦吗?但Hitis,直接返回给你实际执行的sql和paramters数组,...

    Hitis V1.1.1

    (5)在ibatis中,想做物理分页,你必须在写一个列表sql,还要写一个90%一样的总页数的sql,不仅如此,你还要在列表sql外包上一层分页sql代码,你不觉得麻烦吗?但Hitis,直接返回给你实际执行的sql和paramters数组,...

    Hitis V1.2

    (5)在ibatis中,想做物理分页,你必须在写一个列表sql,还要写一个90%一样的总页数的sql,不仅如此,你还要在列表sql外包上一层分页sql代码,你不觉得麻烦吗?但Hitis,直接返回给你实际执行的sql和paramters数组,...

    40道MyBatis面试题带答案(很全)

    2. 使用分页插件,例如PageHelper,它会在SQL执行前进行拦截,根据不同的数据库方言插入物理分页的SQL片段。 对于SQL执行结果的封装,MyBatis有两种主要的映射方式: 1. 使用`&lt;resultMap&gt;`标签定义映射规则,指定...

    springmybatis

    mybatis实战教程mybatis in action之七实现mybatis分页源码下载 mybatis实战教程mybatis in action之八mybatis 动态sql语句 mybatis实战教程mybatis in action之九mybatis 代码生成工具的使用 mybatis ...

    spring-boot-mybatis-plus数据层框架

    - **内置分页插件**:基于MyBatis物理分页,配置简单,使用方便。 - **多数据库支持**:分页插件支持MySQL、MariaDB、Oracle、DB2、H2、HSQL、SQLite、PostgreSQL等多种数据库。 #### 二、环境搭建与配置 为了在...

Global site tag (gtag.js) - Google Analytics