最近读ibatis的源码,记一下笔记。以后可以看看。
先来看看ibatis的接口包com.ibatis.sqlmap.client,也是程序的灵魂。
SqlMapClient是ibatis框架的入口接口,它实现类是一个线程安全的类,它继承了SqlMapExecutor接口和SqlMapTransactionManager接口,其中SqlMapExecutor主要负责sql statement语句执行,也是我们平常所操作的CRUD。SqlMapTransactionManager主要负责数据库事务操作。
SqlMapClient是由SqlMapClientBuilder类创建的。这里用到了工厂模式。
下面是SqlMapClientBuilder的源码
public class SqlMapClientBuilder
{
protected SqlMapClientBuilder() { }
public static SqlMapClient buildSqlMapClient(Reader reader)
{
return new SqlMapConfigParser().parse(reader);
}
public static SqlMapClient buildSqlMapClient(Reader reader, Properties props) {
return new SqlMapConfigParser().parse(reader, props);
}
}
当我们要创建一个client的时候我们要提供一个SqlMapCongif.xml文件。一般从ibatis2.0开始一个数据对应一个配置文件。SqlMapSession接口也继续了SqlMapExecutor接口和SqlMapTransactionManager接口。它的实现类是一个线程安全的实例。ibatis这样设计就给了我们两种操作数据库的方式我们1.可以直接得到SqlMapClient的实现类实例,用它直接操作数据库语句。2.也可以用SqlMapClient得到session操作数据库。当我们通过openSession得到session的时候一定记住要调用close方法。
- 大小: 15.3 KB
分享到:
相关推荐
《深入解析iBatis源码》 iBatis,一个优秀的Java持久层框架,以其轻量级、灵活的特性在众多ORM(Object-Relational Mapping)框架中独树一帜。iBatis的核心在于它的SQL映射机制,它将数据库操作与业务逻辑解耦,...
描述中的"ibatis框架源码剖析书中附带的光盘,ibatis源码分析"暗示这可能是一个学习资源,用于深入理解iBATIS的工作原理,可能包括了对源码的详细解读和分析。 **iBATIS核心知识点** 1. **SQL映射**:iBATIS的核心...
通过深入分析iBATIS的源码,开发者不仅可以了解其工作原理,还能学习到设计模式、数据库访问的最佳实践以及如何优雅地处理数据库操作。对于提升Java开发者的技能和理解数据库访问层的实现有极大的帮助。在实际开发中...
接下来,关于源码分析: 1. 源码阅读:源码中包含Ibatis的所有核心组件,如SqlSessionFactoryBuilder、SqlSessionFactory、SqlSession等。通过阅读源码,可以深入了解其工作原理,例如如何加载配置文件、如何创建和...
通过对源码的深入分析,我们可以理解ibatis的核心机制,掌握数据库操作的底层原理,从而更好地利用和优化这个强大的持久层框架。在这个压缩包中,包含的文件是《ibatis框架源码剖析》的全文内容。 ibatis作为一个轻...
通过学习和分析这个源码,开发者不仅可以深入了解SpringMVC和iBatis的协同工作原理,还可以掌握如何在Eclipse这样的IDE中配置和运行这样的项目。这有助于提升对MVC模式的理解,提高数据库操作的能力,以及熟练运用...
通过深入研究iBATIS 2.3的源码,开发者不仅可以了解其实现细节,还可以学习到如何设计一个高效的持久层框架,提升自己的编程技巧和设计能力。同时,这也为那些希望在现有基础上定制或优化iBATIS功能的开发者提供了...
一、**IBatis源码分析** IBatis的源码是开源的,这对于开发者来说是一份宝贵的资源,可以让我们深入了解其工作原理和内部机制。通过阅读源码,我们可以学习到以下知识点: 1. **动态SQL**:IBatis的核心功能之一...
本项目深入分析了基于Java语言的iBatis框架设计源码,包含20个文件,涵盖4个XML配置文件、3个Java源文件、2个JAR包文件以及其他相关文件类型。iBatis作为一款流行的持久层框架,旨在简化Java应用程序的数据访问层...
在源码分析部分,你会看到iBATIS如何加载和解析XML配置文件,如何执行SQL语句,以及如何处理异常。这部分内容对于理解iBATIS的工作流程至关重要,它将帮助你更好地调试和优化基于iBATIS的应用。 最后,你会了解到...
资源名称:iBATIS框架源码剖析内容简介:iBATIS是一种比较流行的ORM框架,本书全面介绍其结构体系和分析其源程序代码,该框架的核心包括两个组件,一个是iBATIS DAO,另一个是iBATIS SQL Map。本书分为三个部分,第...
《深入解析iBatis 2.3源码》 iBatis,作为一款经典的Java持久层框架,以其轻量级、灵活的特性深受开发者喜爱。...在实际项目中,结合源码分析,能够更好地定制和扩展iBatis,满足特定的业务需求。
本文将深入探讨如何在iBATIS中实现一对多和多对多的关系映射,并提供相关的源码分析和工具使用技巧。 **一对多关系映射** 在数据库设计中,一对多关系是指一个父记录可以与多个子记录关联,例如,一个用户可以有多...
【标题】"IBatis.Net流风通用管理框架源码.rar" 涉及的主要知识点是基于.NET平台的IBatis.Net框架以及如何构建一个通用的管理框架。IBatis.Net是一个轻量级的持久层框架,它提供了数据库访问的映射功能,帮助开发者...
本书籍“iBATIS 框架源码剖析”提供了对iBATIS框架深入理解的机会,通过源代码分析,帮助读者掌握其内部工作原理。源代码带有详尽的注释,使得学习过程更为直观和高效。 iBATIS的核心概念主要有以下几个方面: 1. ...
总结,iBatis的源代码分析是一个深入了解其工作原理、优化性能以及定制化开发的重要途径。通过解析SqlSessionFactory、SqlSession、Mapper等核心组件,以及XML映射文件解析和动态SQL的实现,我们可以更好地运用...
同时,通过对源码的分析,开发者可以更好地利用这两个框架提供的功能,例如:利用Mybatis的注解简化开发,或者使用Ibatis的动态SQL提高查询效率。 在实践中,IbatisExer和MybatisExer这两个项目提供了一系列的示例...
Ibatis,全称为MyBatis,是一个优秀的Java持久层框架,它主要负责SQL映射,使得开发者能够将注意力集中在编写高质量的代码上,而无需关注底层数据库操作的复杂性。Ibatis通过XML或注解方式配置和映射原生信息,将...