mybaits相关概念
1.1 mybatis简介
mybatis是是一款优秀的基于ORM的半自动轻量级持久层框架,它支持定制化SQL、存储过程以及高级映射。(与另一基于ORM的持久层框架hibernate区别是,hibernate是全自动的,可以完全不写sql语句。)
- mybatis避免了几乎所有的JDBC代码和手动设置参数以及获取结果集。
- mybatis可以使用简单的XML或注解来配置和映射原生类型、接口和Java的POJO(Plain Old Java Objects,普通老式Java对象)为数据库中的记录。
1.2 ORM概念
ORM全称Object/Relation Mapping:表示对象-关系映射的缩写
- ORM完成面向对象的编程语言到关系数据库的映射。
- ORM把关系数据库包装成面向对象的模型。
- ORM框架是面向对象设计语言与关系数据库发展不同步时的中间解决方案。
- ORM框架实现的效果:把对持久化对象的保存、修改、删除 等操作,转换为对数据库的操作
- 当ORM框架完成映射后,程序员既可以利用面向对象程序设计语言的简单易用性,又可以利用关系数据库的技术优势。
1.3 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.4 mybatis优势
mybatis是一个半自动化的持久层框架,对开发人员开说,核心sql还是需要自己进行优化,sql和java编码进行分离,功能边界清晰,一个专注业务,一个专注数据。