ibatis
Java码界探秘
本博客不再维护,搬家到 http://zthinker.com。个人公众号(Java码界探秘)
展开
-
ibatis源码学习(一)整体设计和核心流程
本文主要从ibatis框架的基本代码骨架进行切入,理解ibatis框架的整体设计思路,各组件的实现细节将在后文进行分析。 背景 介绍ibatis实现之前,先来看一段jdbc代码: Java代码 Class.forName("com.mysql.jdbc.Driver"); String url = "jdbc:mysql://localhost:33转载 2014-02-22 10:13:34 · 557 阅读 · 0 评论 -
MyBatis源码研究-缓存
在学习Hibernate中,经常有看到一级缓存和二级缓存的概念,并且有了解到,一级缓存是session级别的缓存一般缓存在内存中,二级缓存是指sessionfactory级别的缓存,一般缓存在内存或者物理介质中。但是在MyBatis中,这两天看源码的时候,好像MyBatis中的缓存的定义和Hibernate中的有所不同。 一级缓存是在BaseExecutor中的通转载 2014-03-20 20:14:13 · 578 阅读 · 0 评论 -
Mybatis源代码分析之类型转换
ORM框架最重要功能是将面向对象方法中的对象和关系型数据库中的表关联了起来,在关联过程中就必然涉及到对象中的数据类型和数据库中的表字段类型的转换,Mybatis中的org.apache.ibatis.type包主要就是实现这个功能。一、org.apache.ibatis.type的基础类在mybatis的官网中(http://mybatis.github.io/mybatis-3/转载 2014-03-20 20:08:45 · 649 阅读 · 0 评论 -
MyBatis 缓存机制深度解剖
缓存概述 正如大多数持久层框架一样,MyBatis 同样提供了一级缓存和二级缓存的支持;一级缓存基于 PerpetualCache 的 HashMap 本地缓存,其存储作用域为 Session,当 Session flush 或 close 之后,该Session中的所有 Cache 就将清空。二级缓存与一级缓存其机制相同,默认也是采用 PerpetualCache,HashMap存转载 2014-03-20 20:16:50 · 1015 阅读 · 0 评论 -
Mybatis中几个重要类
本文基于Mybatis3.2.0版本的代码。1.org.apache.ibatis.mapping.MappedStatementMappedStatement类在Mybatis框架中用于表示XML文件中一个sql语句节点,即一个、或者标签。Mybatis框架在初始化阶段会对XML配置文件进行读取,将其中的sql语句节点对象化为一个个MappedStatement对象。比如下面这个转载 2014-02-26 20:29:34 · 562 阅读 · 0 评论 -
SpringMVC-Mybatis-Maven项目整合
上次不知道为什么,把写好的系列文章都搞成一样了。结果,五篇文章,都变成了最后一篇文章。悲剧,好吧,只好重新写了。这系列文章写的是SpringMVC-Mybatis-Maven项目整合。说白了,其实就是写一个用maven构造的SpringMVC与Mybatis的demo项目。既然是Maven项目,首先肯定看看pom.xml。在看pom.xml之前,请自行构架一个空的m转载 2014-02-25 16:36:13 · 1162 阅读 · 0 评论 -
mybatis实战教程(mybatis in action),mybatis入门到精通
写在这个系列前面的话:以前曾经用过ibatis,这是mybatis的前身,当时在做项目时,感觉很不错,比hibernate灵活。性能也比hibernate好。而且也比较轻量级,因为当时在项目中,没来的及做很很多笔记。后来项目结束了,我也没写总结文档。已经过去好久了。但最近突然又对这个ORM 工具感兴趣。因为接下来自己的项目中很有可能采用这个ORM工具。所以在此重新温习了一下 mybatis转载 2014-02-25 11:30:36 · 525 阅读 · 0 评论 -
spring整合myBatis
整合spring与myBatis之前,需要测试myBatis与数据库之间的链接,至少我喜欢这样做,参考上一篇文章,这次整合也是基于上一篇文章的!http://blog.csdn.net/huzheaccp/article/details/7399124项目的源码和jar包可以去我的资源下载项目的源码和jar包可以去我的资源下载整合之前需要jar包,网上搜一搜,本转载 2014-02-25 09:45:36 · 483 阅读 · 0 评论 -
MyBatis入门示例——MyBatis学习笔记之一
MyBatis是另外一款优秀的ORM框架,前身为iBATIS。凡事预则立,不预则废。鉴于以后的项目可能会用到它,因此决定提前学习。本着分享和督促自己学习的目的,笔者将陆续把学习笔记贴出,希望对朋友们有所帮助。如前述博文所述,笔者将使用ant来管理工程。对ant不熟悉的朋友,请参考笔者的两篇预备篇博文:《ant的下载与安装——mybatis学习笔记之预备篇(一)》和《ant入门示例——mybatis转载 2014-02-25 10:27:09 · 518 阅读 · 0 评论 -
深入浅出MyBatis-快速入门
简介MyBatis的前身叫iBatis,本是apache的一个开源项目, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis。MyBatis是支持普通SQL查询,存储过程和高级映射的优秀持久层框架。MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索。MyBatis使用简单的XML或注转载 2014-02-25 09:45:32 · 541 阅读 · 0 评论 -
MyBatis学习 之 一、MyBatis简介与配置MyBatis+Spring+MySql
一、MyBatis简介与配置MyBatis+Spring+MySqlMyBatis学习 之 一、MyBatis简介与配置MyBatis+Spring+MySqlMyBatis学习 之 二、SQL语句映射文件(1)resultMapMyBatis学习 之 二、SQL语句映射文件(2)增删改查、参数、缓存MyBatis学习 之 三、动态SQL语句My转载 2014-02-25 10:02:34 · 476 阅读 · 0 评论 -
Mybatis中几个重要类
本文基于Mybatis3.2.0版本的代码。1.org.apache.ibatis.mapping.MappedStatementMappedStatement类在Mybatis框架中用于表示XML文件中一个sql语句节点,即一个、或者标签。Mybatis框架在初始化阶段会对XML配置文件进行读取,将其中的sql语句节点对象化为一个个MappedStatement对象。比如下面这个转载 2014-02-24 18:13:17 · 671 阅读 · 0 评论 -
ibatis源码分析
背景:调试模式下,单步运行一个查询订单协议操作,记录了ibatis框架的执行动作,侧面剖析其原理。一、简介:1. dal 层的dao接口实现类通常会继承SqlMapClientDaoSupport。spring容器在初始化一个dao bean实例时,通常会注入两块信息DataSource(数据源)和sqlMapClient(主要是sql语句),这两块信息会封装到SqlM转载 2014-02-24 18:08:53 · 869 阅读 · 0 评论 -
MyBatis入门学习(一)
所需要jar包:mybatis-3.x.x.jar 、如果需要和spring整合,还需要加入相关的包1:看项目目录 红颜色不要关心2:按照步骤:1:加入jar包2:创建数据源(configuration.xml)创建数据库(此处省略)[html]view plaincopyprint?xml ver转载 2014-02-24 22:29:14 · 578 阅读 · 0 评论 -
深入分析 iBATIS 框架之系统架构与映射原理
iBATIS 通过 SQL Map 将 Java 对象映射成 SQL 语句和将结果集再转化成 Java 对象,与其他 ORM 框架相比,既解决了 Java 对象与输入参数和结果集的映射,又能够让用户方便的手写使用 SQL 语句。本文主要介绍了 iBATIS 框架的体系结构和运行流程,以及 iBATIS 如何完成 SQL 语句的解析与 Java 对象与数据字段映射关系的建立,最后用一个实例说明了 i转载 2014-02-22 10:43:48 · 614 阅读 · 0 评论 -
DB2 pureXML 动态编程组合拳:iBatis+BeanUtils+JiBX
黄耀华, 软件工程师, IBM李玉明 (ymli@cn.ibm.com), 软件工程师, Systems Documentation, Inc. (SDI)袁飞 (feiyuan@cn.ibm.com), 软件工程师, Systems Documentation, Inc. (SDI)简介: DB2 pureXML 为管理 XML 数据提供了丰富的功能,在数据存转载 2014-02-22 10:55:54 · 636 阅读 · 0 评论 -
使用 ibatis 处理复杂对象数据关系的实例
如何使用 ibatis 处理复杂对象数据关系iBatis 是一个开源的对象关系映射程序,其工作是将对象映射到 SQL 语句。和其它 O/R Mapping 框架不同,iBatis 开发者需要自己编写和维护 SQL 语句,这给开发带来了很多的灵活性的同时,也带来了很大的复杂度与工作量。 在一个数据库中,常见的对象关系有:1 对 1,1 对多,多对多,单表映射,多表映射,单主键转载 2014-02-22 10:52:43 · 695 阅读 · 0 评论 -
Mybatis源代码分析之包间依赖介绍(一)
通常而言,作为一个系统中的类、接口和注解,或多或少都会被该系统中其他的类、接口或者注解所引用,相互间存在着被我们称为继承、实现、组合、关联、依赖等关系。但是有时出于系统版本的迭代升级,一些类、接口和注解慢慢的不再被系统中的其他类所调用;或者是其提供的功能相对独立,与系统中其他类、接口和注解没有关系。一个正式商用的系统中的类文件没有上万也有数千个,但如何才能发现这些类间的关系?难道要一个一个转载 2014-03-20 20:08:09 · 524 阅读 · 0 评论