一、mybatis的概念
持久层、ORM 、JDBC和mybatis区别
二、mybatis的应用
1.mybatis的搭建
实体类、数据库表、dao层的接口、映射文件xml,全局配置文件,mybatis的api
2.mybatis的应用
单表的操作、多表的操作,延迟加载(懒加载),ResultMap association(一对一,主外键) collection(一对多,关联表)
动态sql的使用:拼接sql语句
三、mybatis的缓存机制
缓存
一级缓存和二级缓存
四、mybatis映射的二种方式
1.使用xml映射文件 StudentMapper.xml
2.使用注解的方式
实现一些配置:
xml文件: 配置文件
注解方式(配合java程序):主流
五、mybatis的源码分析
mybatis的基本api
mybatis替代Dao层(jdbc)
(1)完成数据库的连接
(2)传送sql语句
(3)返回结果
Resources 把全局配置文件读入到内存中
SqlSessionFactoryBuilder :(1)创建SqlSessionFactory(DefaultSqlSessionFactory)
(2)把流中的配置信息----》Configuration对象中
SqlSessionFactory : (1)创建SqlSession(DefaultSqlSession)
(2)设定事务管理,是否自动提交事务
(3)创建了一个Executor(SimpleExecutor),连接数据库,执行sql语句
StatementHandler,ParameterHandler,ResultSetHandler
SqlSession : (1)生成代理类MapperProxy实现指定的接口
(2)调用了接口的方法,实际上是执行了代理类的方法