Hibernate ORM 4.2.1.Final 和 4.1.12.Final 已发布。完整的变更日志可以在此查看:4.2.1.Final4.1.12.Final

最初,4.1.11 计划作为 4.1.x 的最终发布版。然而,在 HHH-8149 中,我们撤销了 HHH-7797(4.1 版中的更改唯一列、键和约束)。这个更改导致了大量问题的产生,回顾起来,一开始就不应该在 4.1.x 中做出这个更改。为了清理这些问题,决定发布 4.1.12。

4.2.1 包含了几个显著的变化

  • HHH-8175 对 PostgreSQL 9.2、Postgres Plus 9.2 和 IBM DB2 10.1 的官方支持。幸运的是,这些数据库与我们的现有方言大多可以无缝工作。只需进行少数几个测试更改。
  • 如上所述,HHH-7797(4.2.0 版)更改了处理唯一性的方式。而不是在列定义、表定义上的 "unique(columns...)"、唯一索引和唯一约束中混合使用 "unique",现在全部改为仅使用唯一约束(DB2 是例外 -- 在某些情况下使用索引)。此次发布中已修复了上述提到的问题:HHH-8092HHH-8162HHH-8178
  • 关于 HHH-8162 的更多细节:由于唯一约束现在是默认的,在 SchemaUpdate 中需要进行特殊处理。所使用的方法是可配置的,通过 "hibernate.schema_update.unique_constraint_strategy" 属性选择。默认为 DROP_RECREATE_QUIETLY。它尝试删除,然后(重新)创建模型中的每个唯一约束。所有错误和异常(约束不存在、约束已存在等)都被忽略。RECREATE_QUIETLY 与之相同,但不尝试删除。SKIP 不会在 SchemaUpdate 上尝试删除或创建任何唯一约束。
  • HHH-1904 为了确保 Hibernate 不会生成某些方言(例如 Oracle)无法使用的过长的外键和唯一键名称,现在生成使用长度小于 30 个字符的随机字符。当然,这不会影响映射中显式命名的键。
  • HHH-7617 改进了生成 Eclipse IDE 项目的支持。有关更多信息,请参阅此 文章
  • 通过 HHH-8096,我们大大改进了 OSGi 支持的 ClassLoader 概念。此外,HHH-7993 支持基本的 Bundle 扫描,以自动发现持久化单元包中的实体和映射。
  • HHH-7714 在 JPA Criteria API 中添加了对 EntityMode.MAP 的支持。
  • HHH-8183 支持在模式验证中使用同义词。通过 "hibernate.synonyms=true" 属性启用此功能(默认禁用)。
  • HHH-8203 确保支持 Proxool 0.9.1。

JBoss Nexus: https://repository.jboss.org/nexus/content/groups/public/org/hibernate
Maven Central: http://repo1.maven.org/maven2/org/hibernate/hibernate-core(应在几天内更新)
SourceForge: https://sourceforge.net/projects/hibernate/files/hibernate4
下载:4.2.1.Final ZIP4.2.1.Final TGZ4.1.12.Final ZIP4.1.12.Final TGZ


返回顶部