Mybatis
1、简介
1.1、什么是Mybatis
- MyBatis是一款优秀的持久层框架
- MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集的过程
- MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 实体类 【Plain Old Java Objects,普通的 Java对象】映射成数据库中的记录。
- MyBatis 本是apache的一个开源项目ibatis, 2010年这个项目由apache 迁移到了google code,并 且改名为MyBatis 。
- Mybatis官方文档 : http://www.mybatis.org/mybatis-3/zh/index.html
- GitHub : https://github.com/mybatis/mybatis-3
如何获得Mybatis
- maven仓库
<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.7</version>
</dependency>
- Github https://github.com/mybatis/mybatis-3/releases
- 中文文档:https://mybatis.org/mybatis-3/zh/configuration.html
1.2 持久化
数据持久化
- 持久化就是将程序的数据在持久状态和瞬时状态转化的过程
- 内存:断电即失
- 数据库(JDBC),IO文件持久化。
- 生活中的持久化:冷藏、罐头。
为什么需要持久化?
-
内存断电即失,有一些对象不能让他丢掉。
-
内存太贵了
1.3、持久层
之前学的层 Dao层、Service层、Controller层… 每个层实现自己的业务
- 完成持久化工作的代码块
- 层是界限明显的
1.4、为什么需要Mybatis?
- 方便
- 传统的JDBC代码太复杂了。简化–>框架–>自动化
- 帮助程序员将数据存入到数据库中
- 不用Mybatis也可以。用了更容易上手。技术没有高低之分
- 优点
- 简单易学:本身就很小且简单。没有任何第三方依赖,最简单安装只要两个jar文件+配置几个 sql映射文件就可以了,易于学习,易于使用,通过文档和源代码,可以比较完全的掌握它的 设计思路和实现。
- 灵活:mybatis不会对应用程序或者数据库的现有设计强加任何影响。 sql写在xml里,便于统 一管理和优化。通过sql语句可以满足操作数据库的所有需求。
- 解除sql与程序代码的耦合:通过提供DAO层,将业务逻辑和数据访问逻辑分离,使系统的设 计更清晰,更易维护,更易单元测试。sql和代码的分离,提高了可维护性。
- 提供xml标签,支持编写动态sql。
最重要的一点:使用的人多!