iBATIS和Hibernate之间存在重大差异.鉴于其特定领域,这两种解决方案都运行良好.建议使用iBATIS in case :
你想创建自己的SQL,并愿意维护它们.
你的环境是由关系数据模型驱动的.
你必须处理现有的和复杂的模式.
如果环境由对象模型驱动并且需要自动生成SQL,请使用Hibernate.
iBATIS和Hibernate之间的区别
两者Hibernate和iBATIS是业界可用的开源对象关系映射(ORM)工具.使用这些工具取决于您使用它们的上下文.
下表突出显示了iBATIS和Hibernate之间的区别 :
iBATIS | Hibernate |
---|---|
iBATIS更简单.它的封装尺寸要小得多. | Hibernate为您生成SQL,这意味着您不必花时间生成SQL. |
iBATIS非常灵活.它提供了更快的开发时间. | Hibernate具有高度可扩展性.它提供了更高级的缓存. |
iBATIS使用的SQL可能与数据库有关. | Hibernate使用相对独立于数据库的HQL.在Hibernate中更改db更容易. |
iBatis将ResultSet从JDBC API映射到POJO Objets,所以你不要不必关心表结构. | Hibernate将Java POJO对象映射到数据库表. |
在iBATIS中使用存储过程非常容易. | 在Hibernate中使用存储过程有点困难. |
Hibernate和iBATIS都得到了SPRING框架的良好支持,因此选择其中一个不应该是一个问题.