Hibernate 3.6.0 CR2下载_Hibernate 3.6.0下载_Hibernate 3.6.0

  

hibernate 3.6.0 logo
hibernate 3.6.0 logo
Hibernate 3.6.0第二个RC版本-Hibernate 3.6.0 CR2下载地址发布了,关注Hibernate 3.6.0的朋友可以去Hibernate官方获取最新的Hibernate 3.6.0 CR2下载地址下载试用。作为Hibernate目前最新的版本,Hibernate 3.6.0 CR2标志着距离Hibernate 3.6.0更加近了一步,同时我们所期待的新特性也更加全面的展示出来。而本次发布的Hibernate 3.6.0 CR2依然是作为功能的改进和bug修复版本,如果是在试用Hibernate 3.6.0的朋友建议升级到最新的Hibernate 3.6.0 CR2,同时笔者不建议在生产环境中使用Hibernate 3.6.0 CR2,毕竟距离Hibernate 3.6.0正式版仍然还有一段路要走,为了稳定起见还是保留之前的Hibernate 3.5系列更好。

  Hibernate是Java开源界最流行的ORM框架之一,很多流行的开源框架都提供了针对Hibernate的整合与实现。在Java ORM界曾经一度是EJB的天下,直到Spring framework的出现几乎结束了EJB 1.0于EJB 2.0的时代也正式由于Spring Framework的发展同时也推动的Hibenate的流行。或许是在Hibernate的影响下,以前收费的TopLink这样的ORM框架也开源了。

  笔者使用Hibernate已经超过了5年的时间,Hibernate带给笔者的有快乐也有悲伤,不够再面向对象的数据库普及之前,以Hibernate为代表的ORM框架仍然是笔者认为最佳的解决方案。而Hibernate带来的开发效率的提升以及代码的高度抽象也是笔者所最津津乐道的。

Hibernate 3.6.0 CR2主要改进包括:

  1. Hibernate 3.6.0 CR2在ValidityAuditStrategy中增加了Envers的支持,该策略允许用户可选的写入历史实体。(官方号称该策略大幅度的提升了查询性能)
  2. Hibernate 3.6.0 CR2增加了注释功能,尤其是强化了”discriminators”的功能,列级读写表达式以及timestamp版本。
  3. Hibernate 3.6.0 CR2修正了使用Infinispan二缓的时候类加载的问题
  4. Hibernate 3.6.0 CR2修正了HQL包含ORDER BY关键字时导致异常的问题

  本次Hibernate 3.6.0 CR2引起笔者最大兴趣的是Envers这个东东。Envers 是来自JBoss的开源项目,Envers目标是根据对实体的设置,提供记录执行数据变更历史的功能(数据变更版本)。Envers的配置非常简单,如果需要对某个实例进行历史数据版本记录,只需要在实例上配置@Versioned annotation即可。针对每个实体的版本的历史数据,Envers都会创建一个单独的数据表进行存储。Envers支持Hibernate和 Hibernate-entitymanager(JPA实现)。

  该项目在2008年10月投入了Hibernate怀抱(看来笔者是在有点落伍了,Hibernate这么大的动静都不晓得)。也就是从Envers 1.1.0正式成为Hibernate的一个模块。Envers的创始人之一Adam Warski宣布:Envers将完全成为Hibernate家族成员,网站,代码存储,Issue tracking等都将进入Hibernate。

  而本次Hibernate 3.6.0 CR2新增的ValidityAuditStrategy原名为ValidTimeAuditStrategy,是在Hibernate 3.6.0 CR2中重构为现在的ValidityAuditStrategy。而官方提出的查询性能的大幅度提升主要是在之前的版本中通过Envers查询最新版本时候是通过子查询实现的,而在使用ValidityAuditStrategy的之后会自动在Envers维护的表中增加一列用于标记最新版本,这样可以大幅度简化查询,同时极高的提升效率。关注该策略的更多信息可以访问下面两个页面查看。

Hibernate 3.6.0 CR2中ValidityAuditStrategy的问题和改进:

http://www.warski.org/blog/?p=239

http://www.warski.org/blog/?p=261

Hibernate 3.6.0 CR2下载地址:

Hibernate 3.6.0 CR2下载

Scroll to Top