一、MyBatis框架简介
MyBatis是一个开源的数据持久化层框架。它的内部封装了通过jdbc访问数据的操作,支持普通的SQL查询,存储过程和高级映射,几乎消除了所有的JDBC代码和参数的手工设置以及结果集的检索。其主要思想是将程序中大量的SQL语句剥离出来,配置在配置文件中,实现SQL的灵活配置。MyBatis基本要素是核心配置文件、核心对象、SQL映射文件;
MyBatis官网: http://mybatis.org
二、ORM(Object Relational Mapping)对象关系映射
对象/关系映射,是一种数据持久化技术,它在3对象模型和关系数据库之间建立起对应关系,并且提供了一种机制,通过JavaBean对象去操作数据库 中的数据;
三、MyBatis是ORM解决方案
基于ORM,MyBatis在对象模型和关系数据库表之间建立一座桥梁,通过MyBatis建立关系映射,便捷的实现数据存储、查询、更改和删除操作。
四、搭建MyBatis开发环境
1、导入mybatis.jar相关包
2、创建javaEntity.java(java实体类)
3、创建一个configuration.xml文件(mybatis的核心配置文件)
4、手动编写javaEntity.xml(sql映射文件)
5、测试:
五、核心对象SqlSessionFactoryBuilder
1、每个MyBatis的应用程序都以一个SqlSessionFactory对象的实例为核心;
2、然后获取SqlSessionFactory对象,该对象实例可以通过SqlSessionFactoryBuilder对象来获得;
3、有 了SqlSessionFactory后,进而可以获取SqlSession实例,SqlSession对象中包含以数据库为背景的所有执行SQL操作的方法;
4、SqlSessionFactoryBuilder对象就是用来生成一个SqlSessionFactory对象,用完就丢,
六、核心对象SqlSessionFactory
1、SqlSessionFactory对象就是创建SqlSession实例的工厂,可以通过SqlSessionFactory的openSession()方法获取SqlSession实例;
2、SqlSessionFactory对象一旦创建,就会在整个应用运行过程中始终存在,因此SqlSessionFactory对象最佳作用于就是Application;
七、核心对象SqlSession
1、SqlSession是用于持久化操作的对象,类似JDBC中的Connection,它提供了面向数据库执行SQL命令所需的所有方法,
2、SqlSession对应着一次数据库会话, 每个线程都有自己的SqlSession实例,SqlSession实例不能被共享,也不是线程安全的,