`
hxyt20
  • 浏览: 91835 次
  • 性别: Icon_minigender_2
  • 来自: 湖南
社区版块
存档分类
最新评论

ibatis介绍

阅读更多

ibatis介绍

相对HibernateApache OJB 等“一站式”ORM解决方案而言,ibatis 是一种“半

自动化”的ORM实现。

所谓“半自动”,可能理解上有点生涩。纵观目前主流的ORM,无论Hibernate 还是

Apache OJB,都对数据库结构提供了较为完整的封装,提供了从POJO 到数据库表的全

套映射机制。程序员往往只需定义好了POJO 到数据库表的映射关系,即可通过Hibernate

或者OJB 提供的方法完成持久层操作。程序员甚至不需要对SQL 的熟练掌握,

Hibernate/OJB 会根据制定的存储逻辑,自动生成对应的SQL 并调用JDBC 接口加以执

行。

大多数情况下(特别是对新项目,新系统的开发而言),这样的机制无往不利,大有一

统天下的势头。但是,在一些特定的环境下,这种一站式的解决方案却未必灵光。

在笔者的系统咨询工作过程中,常常遇到以下情况:

1. 系统的部分或全部数据来自现有数据库,处于安全考虑,只对开发团队提供几

Select SQL(或存储过程)以获取所需数据,具体的表结构不予公开。

2. 开发规范中要求,所有牵涉到业务逻辑部分的数据库操作,必须在数据库层由

存储过程实现(就笔者工作所面向的金融行业而言,工商银行、中国银行、交

通银行,都在开发规范中严格指定)

3. 系统数据处理量巨大,性能要求极为苛刻,这往往意味着我们必须通过经过高

度优化的SQL语句(或存储过程)才能达到系统性能设计指标。

面对这样的需求,再次举起Hibernate 大刀,却发现刀锋不再锐利,甚至无法使用,

奈何?恍惚之际,只好再摸出JDBC 准备拼死一搏……,说得未免有些凄凉,直接使用JDBC

进行数据库操作实际上也是不错的选择,只是拖沓的数据库访问代码,乏味的字段读取操作

令人厌烦。

“半自动化”的ibatis,却刚好解决了这个问题。

这里的“半自动化”,是相对Hibernate等提供了全面的数据库封装机制的“全自动化”

ORM 实现而言,“全自动”ORM 实现了POJO 和数据库表之间的映射,以及SQL 的自动

生成和执行。而ibatis 的着力点,则在于POJO SQL之间的映射关系。也就是说,ibatis

并不会为程序员在运行期自动生成SQL 执行。具体的SQL 需要程序员编写,然后通过映

射配置文件,将SQL所需的参数,以及返回的结果字段映射到指定POJO

使用ibatis 提供的ORM机制,对业务逻辑实现人员而言,面对的是纯粹的Java对象,

这一层与通过Hibernate 实现ORM 而言基本一致,而对于具体的数据操作,Hibernate

会自动生成SQL 语句,而ibatis 则要求开发者编写具体的SQL 语句。相对Hibernate

“全自动”ORM机制而言,ibatis SQL开发的工作量和数据库移植性上的让步,为系___________

设计提供了更大的自由空间。作为“全自动”ORM 实现的一种有益补充,ibatis 的出现显

得别具意义。

 

分享到:
评论

相关推荐

    iBatis介绍及入门教程

    iBatis介绍及入门教程.doc

    ibatis介绍,比较好的入门文档

    对于ibatis介绍的比较详细,是一部比较好的入门级别的教材。

    iBatis介绍文档.rar

    和众多的 SourceForge 开源项目一样,iBATIS 曾经也是其中的一员。在2004年11月3日成功地成为了 Apache Incubator 下的子项目。 iBATIS 包括 for Java 和 for .NET 两个版本,for Java 版提供了SQL Maps 和 DAO 框架...

    IBATIS介绍

    主要介绍了IBATIS的配置使用,与spring,struts的整合,里面涉及到一些例子可以让新手快速对Ibatis上手

    iBatis介绍及入门教程.doc

    iBatis是又一个O/R Mapping解决方案,j2ee的O/R方案真是多,和Hibernate相比,iBatis最大的特点就是小巧,上手很快。如果你不需要太多复杂的功能,iBatis是能满足你的要求又足够灵活的最简单的解决方案。

    ibatis_struts2_spring_介绍

    ibatis_struts2_spring_介绍

    iBATIS介绍入门

    iBATIS是以SQL为中心的持久化层框架。能支持懒加载、关联查询、继承等特性。 iBATIS不同于一般的OR映射框架。OR映射框架,将数据库表、字段等映射到类、属性,那是一种元数据(meta-data)映射。iBATIS则是将SQL查询的...

    iBATIS缓存介绍

    iBATIS缓存介绍 iBATIS二级缓存 iBATIS缓存配置

    iBatis技术框架介绍

    iBatis技术框架介绍。ibatis2.x教程。

    ibatis简介

    NULL 博文链接:https://jcyanfan.iteye.com/blog/266720

    ibatis缓存介绍 - 勇泽 - 博客园.mht

    ibatis缓存介绍 - 勇泽 - 博客园ibatis缓存介绍 - 勇泽 - 博客园ibatis缓存介绍 - 勇泽 - 博客园ibatis缓存介绍 - 勇泽 - 博客园

    ibatis3资料-介绍

    ibatis3资料-介绍,新功能介绍及如何使用

    详细介绍Ibatis的用法

    比较全面的介绍了Ibatis,是入门的比较经典的文档

    iBATIS实战.pdf

    书中既详实地介绍了iBATIS的设计理念和基础知识,也讨论了动态SQL、高速缓存、DAD框架等高级主题,还讲解了iBATIS在实际开发中的应用。《iBATIS实战》的最后给出了一个设计优雅、层次清晰的示例程序JGameStore,该...

    ibatis配置文件介绍

    iBATIS是以SQL为中心的持久化层框架。能支持懒加载、关联查询、继承等特性

    ibatis系列 详细介绍

    打包发送,就是为了共享,为了技术道路上多几个同行者.........

    iBatis分页源代码解析.chm

    iBatis分页源代码解析.chm,ibatis介绍等

    ibatis调用存储过程介绍

    用ibatis调用存储过程的介绍,使用java语言进行开发

    ibatis和hibernate的简单介绍

    ibatis与hibernate区别,之中包括,现在企业为什么选择ibatis而放弃hibernate的选择,所有这里吧自由选择及。

Global site tag (gtag.js) - Google Analytics