日期:2014-05-16 浏览次数:20415 次
Hibernate是当前最流行的O/R mapping框架
iBates是另一种优秀的O/R mapping 框架,相对于Hibernate而言 ibates是一种Sql Mapping的ORM实现。
Hibernate对数据接口提供了较为完整的封装 Hibernate的O/R mapping实现了POJO和数据库表之间的映射,以及SQL自动生成和执行。
程序员甚至不需要对SQL熟练掌握,Hibernate/OJB会根据指导的存储逻辑自动生成对应的SQL语句并调用JDBC接口加以执行。
iBates是对POJO与SQL之间的映射关系,
iBates不会为程序员生成SQL语句,具体SQL需要程序员自己编写,然后通过映射配置文件,将SQL所需的参
数以及返回的结果字段映射到指导的POJO。
相对于Hibernate而言,iBates以SQL开发的工作量和数据库移植性上较差,为系统设计提供了更大的自由空间。
二者对比:
1、iBates非常简单易用,Hibernate相对比较复杂,门槛较高。
2、当系统属于二次开发时,无法对数据库结构做到控制和修改,那么iBates的灵活性将比Hibernate更适合。
3、系统数据处理量巨大,性能要求极为苛刻,这意味着我们必须通过高度优化的SQL语句才能达到性能设计指标,
在这种情况下iBates有更好的可控制性和表现。
4、iBates需要手写SQL语句,Hibernate则基本上是自动生成,偶尔会写一些hql语句。
5、Hibernate现在已成主流的O/R mapping框架,从文档的丰富,成品完善,版本的开发速度都要强于iBates。