`
json20080301
  • 浏览: 165712 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

IBATIS的思想,不同的实现思路

 
阅读更多

Hibernate比较适合对数据进行增,删,改的操作,而iBatis适合进行数据 查询,批量操作,而且方便利用DB底层的功能;IBATIS最吸引人的地方应该是将SQL从JAVA代码中分离,便于维护;但IBATIS的语法和分页并不灵活。

 

这里有个新的实现思路:利用JAVA动态编译功能将拼SQL的JAVA代码配置到XML中,实现SQL和JAVA代码的分离;

 

另外IBATIS的分页是使用逻辑分页,在数据量大时,会出现内存溢出的问题,这里可以使用org.hibernate.dialect.Dialect 中的分页sql生成函数:

    public String getLimitString(String query, int offset, int limit)
    {
        return getLimitString(query, offset > 0 || forceLimitUsage());
    }

    protected String getLimitString(String query, boolean hasOffset)
    {
        throw new UnsupportedOperationException("paged queries not supported");
    }

 

 

 

oracle分页
SELECT T_2.* FROM (SELECT T_1.*, ROWNUM ROWSEQ FROM (

 

select * from HUST_ABORAD_ACHIEVEMENTS

 

) T_1 where rownum<  #rowsEnd# + ") T_2 WHERE T_2.ROWSEQ >= #rowsStart#

 

mysql分页:
select * from A limit #startRow#, #endRow#

 

分享到:
评论

相关推荐

    ibatis 框架原理实现

    在这个自己编写的Ibatis框架实现中,我们可以看到类似的思路和核心功能。 1. **XML配置文件**: XML文件是Ibatis框架的核心,它存储了SQL语句、参数映射以及结果集映射等信息。在`sqlmap`目录下,可能包含了多个...

    Java EE数据持久层解决方案的设计与实现.pdf

    Java EE数据持久层解决方案的设计与实现是企业级应用开发中的关键环节,主要...同时,这种设计思想也符合“学中做,做中学,学会做,独立做”的教学改革思路,让学生在实践中掌握更实用的技术,提高解决问题的能力。

    struts2系列教程

    - **设计理念**:以WebWork的设计思想为核心,继承Struts1的优点,如MVC架构、易于测试等特点,并在此基础上进行了扩展和改进。 - **优势**: - 面向接口编程,易于维护和扩展。 - 内置拦截器机制,可以轻松处理...

    JdonFramework开源框架 v5.1 Build20071025_jdonframework-5.1.rar

    尽管该版本已有些许年头,但其设计理念和核心功能在当今的软件开发中仍然具有参考价值,尤其是对于理解事件驱动和面向组件的编程思想,以及如何在Java环境中实现轻量级框架,都有很大的启发意义。 总结,...

    台湾人写的spring 教材

    由台湾作者编写的这个教材以其清晰的思路和易于入门的特点,成为了初学者的一个良好选择,尽管使用的是繁体字,但这并不影响其作为优质教程的价值。 Spring的核心是一个轻量级容器,它实现了IoC(Inversion of ...

    创建灵活易扩展的J2EE企业应用程序框架

    数据持久层则涉及数据的存储和访问,包括JDBC、ORMapping工具(如Hibernate、TopLink)、SQLMapper(如iBatis)、JDO以及EJB实体bean等。ORMapping工具简化了对象与数据库之间的映射,提高了开发效率,而JDBC则更为...

    研磨设计模式 PDF ZIP.001(三个压缩包)

    初级内容从基本讲起,包括每个模式的定义、功能、思路、结构、基本实现、运行调用顺序、基本应用示例等,让读者能系统、完整、准确地掌握每个模式,培养正确的“设计观”;中高级内容则深入探讨如何理解这些模式,...

    研磨设计模式 PDF ZIP.002(三个压缩包)

    初级内容从基本讲起,包括每个模式的定义、功能、思路、结构、基本实现、运行调用顺序、基本应用示例等,让读者能系统、完整、准确地掌握每个模式,培养正确的“设计观”;中高级内容则深入探讨如何理解这些模式,...

    研磨设计模式 PDF ZIP.003(三个压缩包)

    初级内容从基本讲起,包括每个模式的定义、功能、思路、结构、基本实现、运行调用顺序、基本应用示例等,让读者能系统、完整、准确地掌握每个模式,培养正确的“设计观”;中高级内容则深入探讨如何理解这些模式,...

    2023版全新SSM框架实战精讲 视频教程 下载下载 因为太大存百度云盘3.zip

    041-spring-aop-场景复现和解决思路.mp4 042-spring-aop-代理模式和静态代理.mp4 043-spring-aop-动态代理模式.mp4 044-spring-aop-面向切面编程思想.mp4 045-spring-aop-aop8个核心名词理解.mp4 046-spring-...

    2023版全新SSM框架实战精讲 视频教程 下载下载 因为太大存百度云盘4.zip

    041-spring-aop-场景复现和解决思路.mp4 042-spring-aop-代理模式和静态代理.mp4 043-spring-aop-动态代理模式.mp4 044-spring-aop-面向切面编程思想.mp4 045-spring-aop-aop8个核心名词理解.mp4 046-spring-...

    2023版全新SSM框架实战精讲 视频教程 下载下载 因为太大存百度云盘2.zip

    041-spring-aop-场景复现和解决思路.mp4 042-spring-aop-代理模式和静态代理.mp4 043-spring-aop-动态代理模式.mp4 044-spring-aop-面向切面编程思想.mp4 045-spring-aop-aop8个核心名词理解.mp4 046-spring-...

    2023版全新SSM框架实战精讲 视频教程 下载下载 因为太大存百度云盘1.zip

    041-spring-aop-场景复现和解决思路.mp4 042-spring-aop-代理模式和静态代理.mp4 043-spring-aop-动态代理模式.mp4 044-spring-aop-面向切面编程思想.mp4 045-spring-aop-aop8个核心名词理解.mp4 046-spring-...

Global site tag (gtag.js) - Google Analytics