`
javaeyetodj
  • 浏览: 434484 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Hibernate与ibatis的区别概括

阅读更多
转自 http://developer.51cto.com/art/200909/153204.htm
---------IBMdW 
这里介绍Hibernate与ibatis,就像大家闺秀对小家碧玉,大家闺秀不仅具有小家碧玉的全部,而且知名度更高,更受尊敬,更受人追捧,更有发展前途。
在向大家详细介绍Hibernate与ibatis的区别之前,首先让大家了解下Hibernate有着ibatis无法替代的优势,然后全面介绍Hibernate与ibatis的区别。

Hibernate在解决性能问题方面做得非常好。有了它的缓存机制,使用第三方缓存和数据库连接池,就较好的解决的性能问题。但这些还不够,Hibernate给了开发者足够的自由,让开发者自己去控制性能问题。

学习了一段时间的ibatis,我觉得Hibernate有着ibatis无法替代的优势。

1.Jboss,Hibernate是jboss的项目,jboss的所有项目的持久层都采用的Hibernate,要知道,jsr规范组的专家们大多数是来自jboss的,在一定程度上说,jboo引领着java的发展方向。使用Hibernate,跟着jboss,不偏离java的发展方向。

2.Gavin King,我最崇拜的偶像,他不仅发明了强大的Hibernate,还搞出了同样强大且优雅的web2.0应用程序框架seam.他是ejb3.0专家组成员之一,是jpa规范请求的领导者,他java领域最有发言权、最权威的领袖人物之一。现在,他领导web bean的,jsr299的发展,web bean规范的制定,全球软件巨头如ibm、oracle、bea和apache没有一个反对,纷纷响应。Web bean,想象起来,实在太美好了,完全的松耦合和强类型,所有的应用组件生活在一个应用组件上下文context中,相互合作。那时将不再有各种各样的上下文环境,不再有struts2的ActionContext,不再有spring的ApplicationContext,不再有Hibernate的session,不再有持久化上下文,不再有事务上下文,不再有安全上下文,所有组件生活在一个大家庭中,大家其乐融融,实现天下的大和平。

3.osgi,我认为现在最值得学习的一个技术,有了osgi,实现真正的多模块开发,改变传统的开发方式。现在,已经有了Hibernate osgi,spring dynamic modul(osgi),struts 2 同样实现了对osgi的支持。目前,eclipse是基于osgi开发的,ibm的websphere v6.1,bea的所有产品都重构在osgi上,spring的应用服务器同样基于osgi,在EclipseCon2007上,osgi成为了主要的话题。Osgi受到如此的待遇,一点不奇怪,因为他具有无比强大的功能,改变传统的软件开发方式。Osgi采用树设计模式,将一个项目分成多个模块(bundle),每个模块单独部署,单独运行,说白了,就是将一个工程分成许多的插件,每个插件单独开发,重复使用,实现完全的即插即用。太令人激动了。如果公司的软件开发基于osgi,将会有大量的重复使用的osgi bundles,公司将会积累大量的无形资产,软件开发将会越来越快。而ibatis现在还没见到对osgi的支持。

4.Hibernate的社区非常繁荣,ibatis则相对平静。

综述,Hibernate还有很多优秀的特点,只是我们不知道。Hibernate与ibatis,就像大家闺秀对小家碧玉,大家闺秀不仅具有小家碧玉的全部,而且知名度更高,更受尊敬,更受人追捧,更有发展前途。小家碧玉尽管也很有魅力,但始终比上大家闺秀。

Hibernate所做的不仅仅是dao层的持久化工作,而ibatis恰恰如此。

选择Hibernate,选择orm的王者,选择更全面的工作体验,选择更高效的工作方式,选择更多的利润;选择Gavin King,跟着领袖走;选择jboss,追随开源的潮流,不偏离java的发展方向。

一切都不是借口。一切都在发展,Hibernate会越来越好。

分享到:
评论

相关推荐

    ibatis在web工程中的应用笔记

    文件“iBatis和Hibernate的区别.doc”可能包含更详细的对比分析,但我们可以简单概括如下: 1. 数据访问方式:MyBatis允许直接编写SQL,灵活性高,而Hibernate则是基于对象关系映射(ORM),提供了一种面向对象的...

    Struts学习笔记

    Struts可以与许多其他技术和框架无缝集成,如Hibernate、iBatis等持久层框架,Spring框架进行服务层管理和依赖注入,以及 Tiles 模板框架实现页面布局。 七、最佳实践 在实际开发中,应注意以下几点: 1. 尽量保持...

    mybatis自学教程

    与Hibernate这个全自动的ORM框架相比,MyBatis属于半自动ORM框架,主要差异在于Hibernate能够自动生成SQL语句以及管理POJO(Plain Old Java Object)和数据库表之间的映射关系,而MyBatis则需要程序员自己编写SQL...

    分布式应用层中间件的设计.pdf

    DDLM在持久化框架(如Hibernate)与JDBC之间发挥作用,将业务逻辑层的SQL语句(逻辑SQL语句)根据垂直与水平拆分策略转换成对多个数据源操作的多个SQL语句(物理SQL语句)。 DDLM中间件的设计使应用层具备分布式...

    很符合应届毕业生的简历模板

    - **开源项目知识**:了解webwork、ibatis等开源项目,并能够使用PowerDesigner等工具进行数据建模。 ### 项目管理经验 项目经验部分展示了求职者的实际操作能力和解决问题的能力。具体包括: - **项目一**:通用...

    struts2系列教程

    - **集成原理**:iBatis与Struts2集成的基本原理。 - **应用场景**:适合集成iBatis的情况及其优势。 #### 十六、集成jQuery - **16.1 什么是jQuery**:jQuery库的基本介绍。 - **16.2 jQuery操作CSS**:使用jQuery...

    struts2 详解

    - **易于与其他框架集成**:Struts2可以很好地与Spring、Hibernate等框架集成,形成一套完整的解决方案。 #### 三、Struts2的核心概念 1. **Struts2的体系结构** - **模型层(Model)**:负责管理应用程序的业务...

    mybatis学习笔记

    - **与Hibernate的不同**:比较MyBatis与Hibernate的区别。 #### 2. Dao开发方法 ##### 2.1 需求 - 分析需求场景。 ##### 2.2 SqlSession的使用范围 - **SqlSessionFactoryBuilder**:用于构建`SqlSessionFactory`...

Global site tag (gtag.js) - Google Analytics