mybatis是Apache的一个开源项目iBatis,2010年这个项目由Apache software foundation迁移到了Google code,并改名为mybatis,2013年 11月迁移到GitHub。
mybatis是一个实现了数据持久化的开源框架(ORMapping:object relationship mapping 对象关系映射),简单理解就是对JDBC进行封装。
对象:面向对象;关系:关系型数据库如mysql,非关系数据库如nosql。
java到MySQL的映射,开发者可以以面向对面的思想来管理数据库。
mybatis的优点
和JDBC相比,减少了50%以上的代码量。
mybatis是最简单的持久化框架,简单易学。
mybatis很灵活,不会对应用程序或数据库的现有设计有任何影响,SQL写在XML中,从程序代码中彻底分离,降低耦合度,便于统一管理和优化,并可重用。
提供XML标签,支持编写动态SQL语句。
提供映射标签,支持对象与数据库的ORM字段关系映射。
mybatis的缺点
SQL语句编写的工作量比较大,尤其是字段多,关联表多时,更是如此,对开发人员编写SQL语句有一定要求。
SQL语句依赖于数据库,导致数据移植性差,不能随意更好数据库。