MyBatis的前身就是iBatis,iBatis本是由Clinton Begin开发,后来捐给Apache基金会,成立了iBatis开源项目。2010年5月该项目由Apahce基金会迁移到了Google Code,并且改名为MyBatis。
MyBatis介绍:
MyBatis是一个数据持久层(ORM)框架。把实体类和SQL语句之间建立了映射关系,是一种半自动化的ORM实现。
MyBatis的优点:
1.基于SQL语法,简单易学。
2.能了解底层组装过程。
3.SQL语句封装在配置文件中,便于统一管理与维护,降低了程序的耦合度。
4.程序调试方便。
与Hibernate的对比:
Hibernate
1、主流的ORM框架、提供了从 POJO 到数据库表的全套映射机制
2、会自动生成全套SQL语句。
3、因为自动化程度高、映射配置复杂,api也相对复杂,灵活性低.
4、开发人同不必关注SQL底层语句开发
MyBatis
1、是一个SQL语句映射的框架(工具)
2、注重POJO与SQL之间的映射关系。不会为程序员在运行期自动生成 SQL
3、自动化程度低、手工映射SQL,灵活程度高.
4、需要开发人员熟炼掌据SQL语句
MyBatis的基本要素:
一、configuration.xml全局配置文件
二、mapper.xml核心映射文件
三、SqlSession接口
基础配置文件configuration.xml
configuration.xml是系统的核心配置文件,包含数据源和事务管理器等设置和属性信息,XML文档结构如下:
transactionManager 事务管理器
dataSource 数据源
配置环境
<configuration>
<environmentsdefault="development">
<environmentid="development">
<transactionManagertype="JDBC"/>
<dataSourcetype="POOLED">
<propertyname="driver" value="${driver}"/>
<propertyname="url" value="${url}"/>
<propertyname="username" value="${username}"/>
<propertyname="password" value="${password}"/>
</dataSource>
</environment>
<environmentid="development2">
……
</environment>
</environments>
</configuration>