概念
- MyBatis是一个半自动的映射框架,之所以称为半自动,是因为它需要手工匹配提供的POJO、SQL、和映射关系,而Hibernate只需提供POJO和映射关系即可。
入门案例
搭建环境
下载地址:
https://github.com/mybatis/mybatis-3/releases
创建项目,导入jar包
Mybatis的基本构成
1) SqlSessionFactoryBuilder(构造器),
根据配置信息或代码来生成SqlSessionFactory(工厂接口)
2) SqlSessionFactory:来生成SqlSession
3) SqlSession:执行SQL并返回结果
4) SQLMapper:由一个Java接口和XML(或注解)构成
构建SqlSessionFactory
- 映射文件:
- 代码:
构建SqlSession
- 获取映射器,让映射器通过命名空间和方法名称找到对应的SQL,执行SQL并返回结果
- 直接通过命名信息去执行SQL返回结果
映射器
映射器是由Java接口和XML文件(或注解)共同组成的。
作用如下:
1) 定义参数类型
2) 描述SQL语句
3) 定义查询结果和POJO的映射关系
4) 描述缓存
注解产生的映射器
生命周期
- SqlSessionFactoryBuilder
创建好SqlSessionFactory之后,它的使命就完成了
- SqlSessionFactory
单例
- SqlSession
通过finally来关闭session
log4j和工具类
1.引入log4j的配置文件,打印日志信息,查看执行的底层细节
2.创建SqlSessionFactoryUtil工具类,提供getSqlSession方法
走一遍CRUD