文件名称:spring-ibatis-ext-plugin.1.0.0 扩展ibaits原生SQL
文件大小:11KB
文件格式:JAR
更新时间:2014-10-19 08:08:21
spring ibatis 物理分页 sql
一直以来ibatis的分页都是通过滚动ResultSet实现的,应该算是逻辑分页吧。逻辑分页虽然能很干净地独立于特定数据库,但效率 在多数情况下不及特定数据库支持的物理分页,而hibernate的分页则是直接组装sql,充分利用了特定数据库的分页机制,效率相 对较高。本文讲述的就是如何在不重新编译ibatis源码的前提下,为ibatis引入hibernate式的物理分页机制。 基本思路就是找到ibatis执行sql的地方,截获sql并重新组装sql。通过分析ibatis源码知道,最终负责执行sql的类是 com.ibatis.sqlmap.engine.execution.SqlExecutor,此类没有实现任何接口,这多少有点遗憾,因为接口是相对稳定契约,非大 的版本更新,接口一般是不会变的,而类就相对易变一些,所以这里的代码只能保证对当前版本。