1. 简介
1.1什么是Mybatis
- MyBatis 是一款优秀的持久层框架,
- 它支持定制化 SQL、存储过程以及高级映射。
- MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。
- MyBatis 可以使用简单的 XML 或注解来配置和映射原生类型、接口和 Java 的 POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。
如何获得Mybatis?
<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.3</version>
</dependency>
1.2持久化
数据持久化
- 数据持久化就是将内存中的瞬时数据转存到存储设备中,保证在出现何种的内存回收,应用销毁,即便关机之后, 数据仍然存在。
- 持久化就是将数据在持久状态和瞬间状态的转化的过程
为什么需要数据持久化
- 数据一般会存储在内存中,断电即失,但有些数据是不能丢失的。
- 内存太贵了
1.3持久层
Dao层,Service层,Controller层…
- 完成持久化工作的代码块(Dao层)
- 层的界限十分明显
1.4Mybatis的优势
- 简单易学:本身就很小且简单。没有任何第三方依赖,最简单安装只要两个jar文件+配置几个sql映射文件易于学习,易于使用,通过文档和源代码,可以比较完全的掌握它的设计思路和实现。
- 灵活:mybatis不会对应用程序或者数据库的现有设计强加任何影响。
- sql写在xml里,便于统一管理和优化。通过sql语句可以满足操作数据库的所有需求。
- 解除sql与程序代码的耦合:通过提供DAO层,将业务逻辑和数据访问逻辑分离,使系统的设计更清晰,更易维护,更易单元测试。sql和代码的分离,提高了可维护性。
- 提供映射标签,支持对象与数据库的orm字段关系映射
- 提供对象关系映射标签,支持对象关系组建维护
- 提供xml标签,支持编写动态sql。
- 最重要的一点:使用的人多