浅析Hibernate orm框架

开发 后端
这里介绍Hibernate不仅仅作为持久层的orm框架存在,它除了dao层的持久化操作外,还有很多。以及介绍Hibernate将ejb2时代的实体bean赶进了历史,而ejb3的jpa标准也只不过是Hibernate的子集而已。

Hibernate有很多值得学习的地方,这里我们主要介绍orm框架,包括介绍Spring+Hibernate+范型+可变参数等方面。

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

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

1.Hibernate不仅仅作为持久层的orm框架存在,它除了dao层的持久化操作外,还有很多。

在注解annotation已经走向主流的今天,Hibernate 迅速响应,让xml部署描述符成为可选的。Hibernate annotation 对大字段的处理只是一个@Lob就搞定了。

Hibernate search对Lucene进行了轻量级的封装,全文检索变得非常简单。

Hibernate validator被认为是最合理的验证方式,将验证策略直接附在贯穿各层的领域模型domain上,不再需要哪些web框架的xml方式的验证,代码中不再出现大量的非空/null的判断。

2.jbpm, Jbpm业务流程引擎的持久层采用Hibernate来实现,要想使用jbpm,Hibernate是必须的。我想,业务流程管理无比重要,在soa迅速发展的今天,如果实施soa项目,业务流程管理是必然和必须的。因为soa就是业务和it技术的融合,是业务流程管理和it基础架构的融合。在soa中,业务管理是***位的,这需要相应的技术来实现该业务流程管理。开源领域的jbpm我想会是***。所以,为了将来有可能实施soa项目,为了实现soa的业务流程管理,应该使用Hibernate.

3.大家都知道,Hibernate将ejb2时代的实体bean赶进了历史,而ejb3的jpa标准也只不过是Hibernate的子集而已。jsr规范请求的威力是巨大的,没有各种jsr规范请求,就不会有各种应用程序框架,各种应用程序框架只是那些jsr规范请求的实现者。jpa 作为持久层的规范标准,引导持久层orm框架的方向,jpa同样以面向对象的方式操作数据库,而不是写sql语句。规范标准都完全orm,不写sql了,你还有理由不跟着它吗?

4.Spring+Hibernate+范型+可变参数,这是一个非常强大的组合,对应普通的crud操作,你不再需要重复写那些烦人的相似的dao层和manager层的代码,仅仅需要写一次,就完成了所有大量的crud操作。Ibatis尽管也支持范型,但始终没有Hibernate支持的好

【编辑推荐】

  1. Hibernate专业知识介绍
  2. 讨论Hibernate和模型对象
  3. Hibernate查询缓存全面分析
  4. 概括Hibernate主键生成机制
  5. Hibernate Pager基础介绍
责任编辑:佚名 来源: IBMdW
相关推荐

2009-06-02 17:27:28

Hibernate框架ORM

2009-09-22 17:13:53

Hibernate O

2009-09-21 17:55:14

Hibernate O

2012-06-02 01:36:22

HibernateJava持久层框架

2009-09-28 11:12:52

Hibernate O

2009-09-28 17:23:51

Hibernate E

2009-06-26 16:19:32

Hibernate实现

2012-03-09 09:26:39

JavaHibernate

2009-09-24 11:41:46

Hibernate延迟

2009-09-21 17:23:49

Hibernate使用

2009-09-21 18:13:11

Hibernate S

2009-09-23 10:19:08

Hibernate分页

2009-09-21 12:50:34

Hibernate架构

2009-09-23 17:28:55

Hibernate C

2011-07-22 09:17:26

ApacheJava

2020-11-25 09:49:05

Hibernate

2009-09-22 17:32:38

Hibernate A

2009-09-22 10:23:15

Hibernate配置

2009-09-14 17:40:47

LINQ To SQL

2009-09-24 10:07:21

Hibernate M
点赞
收藏

51CTO技术栈公众号