Mybatis源码-级联映射和懒加载
·📄 8953 字·🍵 18 分钟
MyBatis其中一个比较强大的功能是支持查询结果级联映射。使用MyBatis级联映射,我们可以很轻松地实现一对多、一对一或者多对多关联查询,甚至可以利用MyBatis提供的级联映射实现懒加载。
点击查看笔记列表
MyBatis是一款在持久层使用的SQL映射框架,可以将SQL语句单独写在XML配置文件中,或者使用带有注解的Mapper映射类来完成数据库记录到Java实体的映射。与另一款主流的ORM框架Hibernate不同,MyBatis属于半自动的ORM框架,它虽然不能将不同数据库的影响隔离开,仍然需要自已编写SQL语句,但是可以灵活地控制 SQL语句的构造,将SQL 语句的编写和程序的运行分离开,使用更加便捷。
MyBatis源于Apache的一个开源项目iBatis。
ClintonBegin 开发了 iBatis框架,并引入了SQL映射作为持久化层开发的一种方法。
不久后ClintonBegin将iBatis捐献给Apache软件基金会。
这个项目由Apache迁移到了GoogleCode,并改名为MyBatis。
MyBatis迁移到目前最大的源代码托管平台Github
目前,Java实现的持久化框架比较多,名气相对较大的有Hibernate、Speedment、SpringDataJPA、ActiveJPA等。总结一下,MyBatis能够流行起来的主要原因有以下几点: