1.1 Mybatis历史
- MyBatis 是 Apache 的一个开源项目 iBatis, 2010 年 6 月这个项目 由 Apache Software Foundation 迁移到了 Google Code,随着开发团队转投 Google Code 旗下, iBatis3.x 正式更名为 MyBatis ,代码于 2013 年 11 月迁移到 Github
- iBatis 一词来源于“internet”和“abatis”的组合,是一个基于 Java 的持久层框架。iBatis 提供的持久层框架包括 SQL Maps 和 Data Access Objects(DAO)
1.2 什么是Mybatis?
- MyBatis 是一个支持SQL定制、存储过程以及高级映射的优秀的半自动持久层框架。它内部封装了JDBC,MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。
- Mybatis通过XML或注解的方式进行配置和原始映射,将接口和Java的POJO(Plain Old Java Objects,普通Java对象)映射成数据库中的记录
- 最后mybatis框架执行sq并将结果映射为java对象并返回。采用ORM思想解决了实体和数据库映射的问题,对jdbc进行了封装,屏蔽了jdbcapi底层访问细节,使我们不用与jdbc API打交道,就可以完成对数据库的持久化操作。
1.3 为什么使用Mybatis?
1.3.1 原始jdbc开发存在如下问题:
- 数据库连接创建、释放频繁造成系统资源浪费从而影响系统性能
- sql语句在Java代码中硬编码、耦合度高,代码不易维护,sql变动需要改变ava代码
- 需要手动处理实体数据与数据库表的字段的映射:查询和插入操作时将结果集中的数据手动封装到实体中,将实体的数据设置到sql语句的占位符位置**
1.3.2 应对上述问题给出的解决方案:
- 使用数据库连接初始化连接资源
- 将sql语句抽取到xm配置文件中
- 使用反射、内省等底层技术,自动将实体属性与表字段进行自动映射
1.4 Mybatis下载
下载地址:GitHub下载地址.