`

ibatis的使用以及实例源码开放

阅读更多

相对Hibernate和Apache OJB 等“一站式”ORM解决方案而言,ibatis 是一种“半
自动化”的ORM实现。
所谓“半自动”,可能理解上有点生涩。纵观目前主流的ORM,无论Hibernate 还是
Apache OJB,都对数据库结构提供了较为完整的封装,提供了从POJO 到数据库表的全
套映射机制。程序员往往只需定义好了POJO 到数据库表的映射关系,即可通过Hibernate
或者OJB 提供的方法完成持久层操作。程序员甚至不需要对SQL 的熟练掌握,
Hibernate/OJB 会根据制定的存储逻辑,自动生成对应的SQL 并调用JDBC 接口加以执
行。

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

iBATIS不同于一般的OR映射框架(eg:hibernate)OR映射框架,将数据库表、字段等映射到类、属性,那是一种元数据(meta-data)映射。iBATIS则是将SQL查询的参数和结果集映射到类。因此可以说,iBATIS做的是SQL Mapping的工作。它把SQL语句看成输入以及输出,结果集就是输出,而where后面的条件参数则是输入。iBATIS能将输入的普通POJO对象、MapXML等映射到SQL的条件参数上,同时也可以将查询结果映射到普通POJO对象(集合)、MapXML等上面。iBATIS使用xml文件来映射这些输入以及输出。能大大减少数据库存储部分的代码量,而且可以非常方便的利用SQL中的一些小技巧。废话不说了,直接看源码吧,见附件有sql文件这里提供的是mysql数据库。直接下载后导入就可以直接使用。

分享到:
评论
11 楼 C_J 2009-09-02  
lishuaibt 写道
有没有哪位大侠对ibatis的源代码有深入的研究的呀。。。该怎么入手的


我刚从案例入手~

附件提供了一个sample..
10 楼 p_x1984 2009-06-29  
赞同rainwindboy 的说法,改天咱再写一个例子。
9 楼 rainwindboy 2009-06-29  
qinjingkai 写道
你这样写是很危险的,特别是事务处理那里

public void updateStudentById(Student student) {
        try {
          sqlMapClient.update("updateStudent", student);
        } catch (Exception e) {
        e.printStackTrace();
        }
}

}
如果出现异常的话你的事务根本就没有回滚!!!!!直接报了异常,数据库可能有脏数据

没有仔细读楼主的代码,但是感觉如果是spring来做中间层的话,事务处理会没有问题的
8 楼 lishuaibt 2009-06-19  
有没有哪位大侠对ibatis的源代码有深入的研究的呀。。。该怎么入手的
7 楼 gembler 2009-01-21  
sdh5724 写道
1:1,N:1,1:N,N:N
究竟是什么, 大家别笑话我, 我很少研究这东西, 谁能举例说下。

打死不信
6 楼 p_x1984 2009-01-21  
有时间来好好研究下!
5 楼 sdh5724 2009-01-21  
1:1,N:1,1:N,N:N
究竟是什么, 大家别笑话我, 我很少研究这东西, 谁能举例说下。
4 楼 sailpoplar 2009-01-21  
提供一点ibatis的高级特性运用了
3 楼 p_x1984 2009-01-21  
提出的意见,我会及时的更新源码的。谢谢!
2 楼 qinjingkai 2009-01-21  
你这样写是很危险的,特别是事务处理那里

public void updateStudentById(Student student) {
        try {
          sqlMapClient.update("updateStudent", student);
        } catch (Exception e) {
        e.printStackTrace();
        }
}

}
如果出现异常的话你的事务根本就没有回滚!!!!!直接报了异常,数据库可能有脏数据
1 楼 yindj0821 2009-01-21  
例子有点太简单了。最起码把1:1,N:1,1:N,N:N加上去吧

相关推荐

    Ibatis 入门经典 实例

    Ibatis 的一大亮点是支持动态 SQL,可以使用 `<if>`、`<choose>`、`<when>`、`<otherwise>`、`<where>` 等标签根据条件动态构建 SQL 语句,提高代码复用性。 五、参数映射与结果映射 1. 参数映射:通过 `...

    Ibatis和Mybatis实例源码

    在源码中,可以看到Ibatis如何通过SqlSessionFactory构建会话工厂,以及SqlSession接口如何处理数据库交互。SqlMapper接口提供了动态SQL的能力,允许开发者根据业务需求定制SQL语句。 Mybatis是Ibatis的升级版,它...

    ibatis学习完整实例,例子

    通过深入学习和实践"ibatistest2"这个实例,开发者不仅可以掌握Ibatis的基本使用,还能理解其在实际项目中的应用方式,为日后的开发工作打下坚实的基础。记住,理论与实践相结合,才能真正掌握一门技术,希望...

    ibatis 实例 配置 源码

    ibatis 实例 配置 源码 依赖包 ibatis-2.3.4.726.jar commons-logging-api.jar commons-logging-1.1.jar commons-dbcp-1.2.2.jar commons-pool.jar

    iBatis入门实例详细代码

    在这个“IBatisDemo”压缩包中,可能包含了上述的所有文件,包括配置文件、SQL映射文件、Java源代码以及可能的测试类。通过这个实例,你可以学习到如何在Java应用中集成iBatis,以及如何使用它来执行基本的CRUD操作...

    ibatis源码及实例

    iBATIS一词来源于“internet”和“abatis”的组合,是一个由Clinton Begin在2001年发起的开放源代码项目。最初侧重于密码软件的开发,现在是一个基于Java的持久层框架。iBATIS提供的持久层框架包括SQL Maps和Data ...

    ibatis +mysql 实例

    在IT行业中,数据库管理和持久化框架的使用是至关重要的,特别是在Web开发中。这个"ibatis + mysql 实例...通过学习和分析这个实例,你可以更好地掌握Ibatis与MySQL的协同工作方式,以及如何在实际项目中应用这些技术。

    iBatis Web用法实例

    在这个"iBatis Web用法实例"中,我们将深入探讨如何在Web项目中集成并使用iBatis,以及相关的最佳实践。 1. **iBatis 概述**: iBatis 作为轻量级的ORM(对象关系映射)框架,它的核心思想是将SQL与Java代码分离,...

    iBatis开发指南和一个iBatis实例

    接着,"iBatis实例"部分提供了实际操作的代码示例,这是理论知识的实践应用。通过这些实例,你可以学习到如何配置数据源、如何创建Mapper接口和XML配置文件,以及如何处理查询结果。例如,你可能看到如何使用iBatis...

    iBatis教程ppt及实例源代码

    对于实例源代码,它们通常会展示如何配置iBatis,如何创建Mapper接口,以及如何在Service层和DAO层中使用这些接口。你可能会看到如下的步骤: 1. 创建XML配置文件:定义数据源、事务管理器以及SqlSessionFactory的...

    ibatis使用例子,源代码

    标题"ibatis使用例子,源代码"表明这是一个关于iBATIS(一个持久层框架)的实际应用示例,其中包含了可以运行的源代码。这可能是一个简单的项目,旨在帮助开发者理解如何在实际开发中使用iBATIS进行对象关系映射...

    iBATIS开放源代码

    1. **SqlMapConfig.xml**:这是整个iBATIS系统的配置文件,包含了数据源、事务管理器以及其他相关设置。开发者在此文件中定义数据库连接信息,以及映射文件的位置。 2. **Mapper接口/SqlMap.xml**:Mapper接口是...

    ibatis入门实例(全代码)

    在这个"ibatis入门实例(全代码)"中,我们将探讨如何通过 Ibatis 实现对数据库的操作,包括数据库的初始化、SQL 映射文件的编写以及 Java 代码的集成。 首先,让我们了解数据库的准备工作。在实例中,提供了数据库...

    ibatis oracle 实例 (源码)

    通过这个实例,你可以学习如何在Ibatis中配置Oracle数据库,如何编写SQL映射文件,以及如何在Java代码中使用Mapper接口进行数据操作。同时,对于Oracle的使用也会有更深入的理解,例如如何处理Oracle特有的数据类型...

    struts spring ibatis mysql 整合 实例 数据库 源码

    2. 设计和创建Spring的配置文件(如applicationContext.xml),声明Bean,包括Service层、DAO层以及相应的数据源和事务管理器。 3. 集成iBatis,配置SqlMapConfig.xml,编写Mapper接口和XML映射文件,定义SQL语句。 ...

    spring mybatis ibatis 实例(源代码)

    spring mybatis ibatis 实例(源代码)

    Ibatis开发实例

    ### Ibatis开发实例详解 #### 一、Ibatis简介与背景 Ibatis 是一个由 Clinton Begin 在 2001 年发起的开源项目,其名称来源于“internet”和“abatis”的组合。最初,该项目的重点是密码软件的开发,但随着时间的...

    spring与hibernate以及ibatis集成的实例和具体配置图解

    标题“spring与hibernate以及ibatis集成的实例和具体配置图解”表明,这个资料包主要讲解如何将这三个框架结合在一起使用,以构建一个高效、灵活的后端系统。集成这些框架可以实现数据访问层的无缝切换,同时利用...

    IBatis开发实例

    3. **配置SqlMapConfig.xml**:这是IBatis的全局配置文件,包括数据源、事务管理器等设置。 4. **创建Mapper接口和XML配置**:定义Mapper接口,然后创建对应的XML配置文件,写入SQL语句。 5. **实体类定义**:根据...

    <<ibatis框架源代码剖析>> 一个CRUD操作的ibatis项目实例

    《深入剖析iBatis框架:一个CRUD操作的项目实例》 iBatis,一个轻量级的Java持久层框架,以其简洁、灵活的特点,在Java开发领域...通过源代码阅读,不仅可以加深对iBatis的理解,也能提高我们在实际开发中的应用能力。

Global site tag (gtag.js) - Google Analytics