Mybatis随行笔记
重点#常用的数据库引擎:myisam、innodb、memory
MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Plain Ordinary Java Object,普通的 Java对象)映射成数据库中的记录。
<dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>x.x.x</version> </dependency>
持久化
- 数据持久化:将程序的数据在持久状态和瞬时状态转化的过程。
- 数据库(JDBC)、IO文件持久化
为什么需要持久化?
- 内存断电即失,有一些对象不能让他丢失。
- 内存贵
持久层:
完成持久层工作的代码块
层界限十分明显
为什么要使用Mybatis?
-
帮助程序员将数据存入数据库
-
简单易学、自动化、方便、框架,更容易上手
Mybatis特点
- 简单易学。
- 灵活。
- 解除sql与程序代码的耦合:sql和代码的分离,提高了可维护性。
- 提供映射标签,支持对象与数据库的orm字段关系映射
- 提供对象关系映射标签,支持对象关系组建维护
- 提供xml标签,支持编写动态sql。
功能架构
MyBatis架构
我们把Mybatis的功能架构分为三层:
(1)API接口层:提供给外部使用的接口API,开发人员通过这些本地API来操纵数据库。接口层一接收到调用请求就会调用数据处理层来完成具体的数据处理。
(2)数据处理层:负责具体的SQL查找、SQL解析、SQL执行和执行结果映射处理等。它主要的目的是根据调用的请求完成一次数据库操作。
(3)基础支撑层:负责最基础的功能支撑,包括连接管理、事务管理、配置加载和缓存处理,这些都是共用的东西,将他们抽取出来作为最基础的组件。为上层的数据处理层提供最基础的支撑。