`
hxyt20
  • 浏览: 93292 次
  • 性别: 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介绍 #### 一、IBATIS概述 IBATIS是一个开源的持久层框架,它专注于SQL语句的处理,通过提供强大的映射机制来实现对象关系映射(ORM)。相比于其他ORM框架,IBATIS更注重于SQL语句本身,允许开发者更加...

    iBatis介绍文档.rar

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

    iBatis介绍及入门教程.doc

    iBatis是一个轻量级的Java持久层框架,它提供了一种O/R Mapping(对象关系映射)解决方案,使得开发者可以方便地将SQL查询与Java代码进行集成。相较于Hibernate等更为复杂的ORM框架,iBatis以其简洁、易上手的特点受...

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

    ### iBATIS简介与核心组件 #### 一、iBATIS概述 iBATIS是一款开源框架,主要用于简化Java和.NET应用程序与关系型数据库之间的数据交互过程。它通过提供一种简单而灵活的方式来处理对象与数据库之间的映射问题,...

    iBatis介绍及入门教程

    iBatis是一个轻量级的Java持久层框架,它提供了SQL映射功能,将对象关系映射(O/R Mapping)与数据库操作分离,使得开发者能够更灵活地控制SQL语句的编写。相比于Hibernate等更为复杂的ORM框架,iBatis以其小巧、...

    ibatis_struts2_spring_介绍

    ibatis_struts2_spring_介绍

    ibatis 知识点总结(PDF)

    - **百度百科ibatis介绍:** 提供了关于ibatis的基本概念和发展历程的概述。 - **开源中国社区互动讨论:** 在这里可以找到有关ibatis的技术讨论和问题解答。 - **Ibatis官方网站:** 官方网站提供了最新版本的文档...

    ibatis系列 详细介绍

    1. **iBATIS概述**:介绍iBATIS的基本概念、设计理念和核心组件,包括SqlMapConfig.xml配置文件、SqlMap接口和SqlMapClient对象等。 2. **映射文件**:详述了SqlMap映射文件的结构和元素,如sql、select、insert、...

    ibatis.rar学习手册

    1. **iBatis介绍**:iBatis的核心理念是SQL映射,它提供了一种将SQL语句与Java对象映射的方式,使得开发者可以更加灵活地控制SQL的执行。 2. **安装与配置**:介绍如何将iBatis添加到项目中,包括下载依赖、配置...

    iBatis培训教程

    映射文件(如`iBATIS介绍.doc`可能包含的)定义了具体的SQL语句和结果映射。每个SQL映射包含一个或多个SQL语句,每个语句都有一个唯一的ID,可以通过这个ID在Java代码中调用。此外,映射文件还可以指定参数映射和...

    iBATIS缓存介绍

    ### iBATIS缓存介绍 #### 一、缓存介绍 **1.1 缓存对象** 理论上,Web分层设计的各个层都可以有缓存,Web中的任何对象都可以成为缓存的对象。例如: - **HTTP请求结果的缓存**:如页面数据或API响应。 - **...

    iBatis技术框架介绍

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

    ibatis简介

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

    manning.ibatis.in.action.jan.2007.rar

    1. iBATIS介绍和安装:简述iBATIS框架的基本理念,以及如何在项目中引入和配置iBATIS。 2. SQL Maps详解:深入探讨XML映射文件的结构和用法,包括参数映射、结果映射等。 3. 动态SQL和条件查询:演示如何在SQL Maps...

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

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

    ibatis3资料-介绍

    #### 新功能介绍 iBATIS3的主要新功能包括: 1. **增强的XML配置**:iBATIS3引入了一个更强大的XML配置机制,允许开发者通过XML文件定义数据源、事务管理器、映射器等组件,使得配置过程更为直观且易于维护。 2. ...

    详细介绍Ibatis的用法

    ### 详细介绍Ibatis的用法 #### Ibatis概述与特点 Ibatis是一个开源的持久层框架,它通过简单的XML配置文件将JavaBean映射到SQL语句上,从而极大简化了对关系数据库的操作。与其他数据库持久层框架如JDO、...

    IBatis 指导手册

    #### 一、IBatis 介绍 - **定义**:“IBatis”是一款开放源代码的框架,主要用于数据访问对象(Data Access Object, DAO)与对象关系映射(Object-Relational Mapping, ORM)。它提供了一种简单而灵活的方式来处理...

Global site tag (gtag.js) - Google Analytics