发布:2014/9/25 15:19:17作者:管理员 来源:本站 浏览次数:1508
在上一篇博客中我们认识了ibatis框架,它是一个半自动化的ORM实现,针对sql语句进行映射,将输入输出参数映射成为对象,它还是从关系到对象的思路来解决数据库的操作问题。
这篇博客介绍一下hibernate框架和ibatis框架的区别,以及他们的效率之间的比较。
比较方面 |
Ibatis框架 |
Hibernate框架 |
从设计思路来看
|
从关系型开始到对象型的思路来解决数据库的操作问题 |
从对象的角度的思路来解决数据库的操作问题 |
从方便性上来看 |
半自动 |
全自动 |
从sql语句书写来看 |
要写sql语句 |
一般不用写,但是有时候我们还是要用书写hql语句的 |
从映射角度来看 |
映射sql语句的输入输出参数 |
对数据库表结构来进行映射 |
从效率来看 |
见下面 |
见下面 |
通过上面的表我们能够清楚的看到hibernate框架和ibatis框架的区别。我们在做数据持久层的设计的时候我们就要根据我们的业务系统的需求来进 行分析,在jdbc和hibernate、ibatis和其他的实现持久层的技术上选择一种。这里具体选择的依据还是要依据相应的业务系统。
下面说说JDBC\IBATIS\HIBERNATE框架的效率问题:
第一, 在进行查询、插入、删除的操作,JDBC>ibatis>hibernate【> 代表效率好,下同】。原因:首先ibatis和hibernate框架要进行对应处理【bean对象与数据库的字段的对应处理】,所以ibatis和 hibernate框架效率比jdbc慢;而hibernate比ibatis慢的原因是hibernate要处理持久化的操作而ibatis框架没有处 理这方面的操作。
第二, 在进行更新的操作,JDBC>ibatis>hibernate。虽 然说顺序没有发生变化,但是我们在处理更新的时候,要知道这三者效率的也是上面情况的影响所以效率不同,但是对于hibernate进行更新的时候要注意 的时候,用它在更新的时候它要首先把数据查询出来,之后在更新。这点是我们主要的,而且这样所以更加的影响了它的执行效率。所以我们通常说 hibernate框架对大数据量更新操作是很影响效率的,就是因为它要先查询在更新,等于做了两步操作。所以我们在选择做设计的时候,这点一定要考虑清 楚,如果业务需求中有大量的更新操作,那么我们选择hibernate框架的时候就要好好考虑了。
这些就是这篇博客所介绍的ibatis和hibernate框架的区别,下面博客中我们要进行spring框架还有一些前台的框架的结构和分析介绍,敬请期待!
© Copyright 2014 - 2024 柏港建站平台 ejk5.com. 渝ICP备16000791号-4