- 5
- 0
- 约2.27万字
- 约 41页
- 2017-06-02 发布于湖北
- 举报
ibatis教程简介剖析
为什么要使用Ibatis? 在系统的开发过程中,你可能碰到如下一些问题: 什么是Ibatis? 半自动化ORM框架 相对于Hibernate等“一站式”ORM框架,Ibatis是一种“半自动化”的ORM框架实现。也就是说,ORM概念中,Ibatis只强调O/R部分的内容,而将M(mapping)这部分概念进行了淡化。因为它将对于SQL语句的操作权,最终交还给了程序员。 上面提到的“半自动化”这个概念可能大家理解起来比较生涩,通过我们对Hibernate或EJB3的了解,可以发现在它们都是针对POJO到数据库提供了一种较为完整的封装。程序只需要对POJO进行操作,就达到操作数据库持久层的目的,我们程序员对SQL语句都不需要太多的了解,因为Hibrenate会根椐POJO的映射关系生成对应的SQL语句,最终调用JDBC完成操作。 大部分情况, Hibernate这种操作机制无往不利,但是在特定的情况下,这种“一站式”的解决方案却不见得灵光。我们来思考在开发过程中的一些问题: 什么是Ibatis? 使用Ibatis解决前述问题 使用“半自动化”化的Ibatis框架,可以解决前面系统开发过程中存在的问题。 针对Hibernate在POJO与数据库之间建立映射,以及自动生成SQL并执行的过程,Ibatis着力点,则在于POJO与SQL语句之间的映射。也就是说,Ibatis在运行过程中不会自动生成SQL语句执行,具体的SQL语句由程序员编写,然后通过映射配置文件,将SQL语句所需的参数,获得的返回结果字段映射到指定的POJO。 使用Ibatis提供的ORM机制,在业务逻辑层实现人员而言,操作的是JAVA对象,这一层面与Hibernate机制中一样的。对于具体的数据库操作,Hibernate会自动生成SQL并执行,而Ibatis要求开发人员具体编写SQL语句。Ibatis通过在数据库移植性和SQL开发工作量上面做出了让步,换来了为系统设计更多的灵活性和自由空间。 如何使用Ibatis? 准备工作 导入Ibatis相关的jar包 目前ibatis的最新版本为2.3.4。使用ibatis非常简单,只需要将相关的jar包复制到指定的目录下便可,具体情况如下表: IBATIS 2.0的一个主要的关注点是管理并降低JAR文件的依赖性。因此,如果您用的是JDK1.4,IBATIS仅仅依赖于Jakarta Commons Logging框架。 如何使用Ibatis? 构建基础代码 ibatis的基础代码包括以下几个部分: ibatis实例配置(SqlMapConfig.xml ) Pojo(Plain Ordinary Java Object) 映射文件 如何使用Ibatis? 构建基础代码 如何使用Ibatis? 构建基础代码 与Hibernate不同,因为需要人工手动编写SQL,所以Ibatis的映射文件一般通过手动编写的方式完成。 如何使用Ibatis? 创建SqlMapClient对象使用Ibatis 通过SqlMapClient对象以及调用此对象上面的API,可以完成通过Ibatis进行持久层操作。 使用SqlMapClient对象完成持久化的步骤 1、读取SqlMapConfig.xml文件 2、创建SqlMapClientBuilder对象 3、创建SqlMapClient对象 4、调用SqlMapClient对象相关API SqlMapConfig.xml配置文件说明 setting元素 setting元素用于配置和优化SqlMapClient实例的各选项。setting元素本身及其所有的属性都是可选的。下表列出了setting元素支持的属性及其功能: SqlMapConfig.xml配置文件说明 typeAlias元素 typeAlias元素让您为一个通常较长的、全限定类名指定一个较短的别名。 在ibatis中默认定义了几个别名,如下: SqlMapConfig.xml配置文件说明 transactionManager元素 transationManager元素让您为SQL Map配置事务管理服务。属性type指定所使用的事务管理器类型。这个属性值可以是一个类名,也可以是一个别名。包含在框架的三个事务管理器分别是:JDBC,JTA和EXTERNAL。 JDBC:通过常用的Connection commit()和rollback()方法,让JDBC管理事务。 JTA:本事务管理器使用一个JTA全局事务,使SQL Map的事务包括在更大的
原创力文档

文档评论(0)