1. mybatis与hibernate的区别
| Mybatis | Hibernate |
|---|---|
| 半自动ORM | 全自动ORM |
| 效率高 | 效率低 |
| SQL,学习成本低 | HQL,学习成本高 |
| 工作量相对较大 | 工作量较小 |
| 数据库移植性差 | 数据库移植性好 |
2. mybatis的工作原理
-
首先加载全局的配置文件,创建SqlSessionFactory
-
通过SqlSessionFactory开启SqlSession
-
通过SqlSession实例获得Mapper对象映射的SQL语句,然后进行执行和事务提交
-
关闭SqlSession
3. mybatis的分层
-
基础支撑层:主要包含事务处理,缓存、连接和配置的管理
-
数据处理层:对参数结果进行解析,SQL语句解析执行
-
接口层:提供数据操作和配置的接口