IBatis是个半自动的ORM实现,因为里面的sql是自己写的,可以增加了程序的灵活性。JavaBean对象自动映射到sql。
它是MVC里dao层的一种对数据库操作的框架,它解决了操作数据库的代码重复,使代码的可读性更加清晰。它提供了数据映射功能。
1,用类加载器加载一个属性文件。
用类加载器获取一个字符串,加载一个文件。因为类加载器和我们的class文件是在同一个目录下。
通过类加载器去加载一个配置文件,不需要指定绝对路径,因为类加载器和我们的class文件是在同一个目录下。
对xml文件的每个节点调用了一个匿名类。把节点的属性转换成对象的每一个属性。
2,用sax对文件进行解析。解析完返回sqlMapper。
3,它的执行过程
它使用了线程本地变量,这样的好处就是为了解决线程并发的现象。因为它在本地有一个它的副本,所以它的set,
get不需要传入key值,因此两条线程互访的时候,只能各调各的,避免了以后出现的线程安全问题。而以前我们需
要使用同步来达到并发,这样可以会导致线程死锁,性能下降。
ThreadLocal它不是一个Thread,而是Thread的局部变量。
在这里用到了事物,事物是为保证数据的完整性,一致性,持久性。返回了一个事物管理器,然后启动里面的事物,
拿到当前的事物的状态,看事物是否启动了,如果没启动,就直接抛出异常终结操作。接着它会通过connection设定
事物的隔离级别。在这里我知道了所有JDBC默认的事物都是自动提交的,所以IBatis会把所有的默认事物取消掉,如
果不取消的,那么代码执行一行就自动提交上去了。
在这里它使用代理,它在这里就是管理事物的,如启动事物,提交事物,关闭事物等的事情,代理起到一个承上启下的作用。
isAssignableFrom:判断这个类型是不是这个类的实现,也就是说是不是一个类型。
在执行sql语句的那个方法中,并没有用到职责链模式,所以耦合度是非常的高的。
分享到:
相关推荐
ibatis 学习笔记 ibatis 学习笔记 ibatis 学习笔记 ibatis 学习笔记 ibatis 学习笔记 ibatis 学习笔记 ibatis 学习笔记 ibatis 学习笔记
1.iBatis2学习笔记:基本原理和配置.doc 2.iBatis2学习笔记:与Spring2的整合.doc 3.iBatis2学习笔记:单表映射 .doc 4.iBatis2学习笔记:SqlMap的配置总结(18条).doc 5.iBatis2学习笔记:入参和返回值的问题.doc ...
ibatis学习笔记 ibatis学习笔记 ibatis学习笔记 ibatis学习笔记 ibatis学习笔记 ibatis学习笔记 ibatis学习笔记
IBatis学习笔记以及使用心得IBatis学习笔记以及使用心得IBatis学习笔记以及使用心得IBatis学习笔记以及使用心得IBatis学习笔记以及使用心得IBatis学习笔记以及使用心得
这篇iBatis 学习笔记是跟着传智播客的视频学习整理的,理解上难免有些错误,请以视频为 根本,有些地方笔记中没有整理到,因为这是我之后看着自己做的工程项目总结的,和视频 不完全一致。请谅解。
ibatis学习笔记.txtibatis学习笔记.txtibatis学习笔记.txt
iBATIS学习笔记 使用 iBATIS 开发近一年了,都是在 Google 中现学现用,是时候为自己总结看看这一年都收获了些什么。无奈的是英文水平实在是太差了,官方文档看起来太吃力,所以到图书馆借了这本《iBATIS 实战》这是 ...
Ibatis的学习笔记,说明Ibatis的使用
Ibatis应用笔记,自己学习研究Ibatis的心得。
iBatis学习笔记,有利于初步了解iBatis。
ibatis数据库笔记,自己学ibatis时记下的,希望对你有所帮助
Ibatis demo 从0基础到入门,内有学习总结,初学者可以下载看下,若有疑问可以留言
Ibatis学习笔记,文档,资源,6合1,有兴趣自学ibatis的童鞋的最佳选择。