SQL (Structured Query Language,结构化查询语言)己经存在很长一段时间了。自从第一次提出“数据能够被规范化为一组相互关联的表”这样的思想以来,已经超过35年了。 从那时起,IT公司就投入了几十亿美圆来开发RDBMS (relational database management system, 关系数据库管理系统)。不多有哪种软件技术敢声称本身像关系数据库和SQL那样经受住了时间的考验。确实,通过了那么长时间,关系技术背后仍然有巨大的推进力,而且它是世界上最大 的软件公司的基础性成果。全部的迹象都代表SQL仍然会继续使用下去,至少30年。数据库
MyBatis的创建正是基于这样的思想:关系数据库和SQL仍然颇有价值,在整个产业范围内对 SQL投资仍然是一个很是好的主意。咱们可能都曾有过这样的经历,应用程序的源代码(即便经历了不少版本)随着时间的流逝最终仍是过期了,但它的数据库甚至是SQL自己却仍然颇有价值。 在某些状况下咱们也会看到一个应用程序已经被用其余的语句重写了,但背后的SQL和数据库却 基本上保持不变。框架
正是基于这些缘由,Mybatis并不试图去隐藏SQL或者避免使用SQL。相反,正是Mybatis这个 持久层框架普遍使用了SQL,它使得SQL更容易使用、更容易集成到现代的面向对象软件中。最 近,有传言说数据库和SQL与咱们的面向对象的设计理念不符,但事实并不必定是这样。Mybatis能帮助咱们避免这种问题。后面,咱们将学习到Mybatis的历史和基本原理,并讨论影响其建立的动力。工具
在现实世界中,混合型解决方案随处可见。将两个看上去彷佛相悖的思想在“中间处”巧妙 结合,被证实是一种有效的方法,它每每能恰到好处地解决问题,在某些状况下甚至会致使新兴行业的诞生。汽车工业就是一个最典型的例子,运输工具大部分的设计革新都来自于对不一样 思想的混合。将小轿车与大篷货车结合最终就造成了咱们如今的家用房车。把卡车与越野车相结合,因而就有了现代城市人身 份的象征——运动型多功能车。将高速汽车与旅行汽车相 结合,因而就有了驾驶起来很舒服的家用小轿车。在汽油引擎旁边安装一个电力引擎,因而目前不少环境污挚问题就均可以迎刃而解了。学习
混合型解决方案在IT领域一样被证实是很是有效的。MyBatis就是这样一个混合型的持久层解决方案。在过去的时间中,大量的方法来使应用程序可以执行SQL,以便操纵其背后的数据库。MyBatis汲取了这些方法中的优秀思想,成为一个独特的持久层解决方案。设计