Hibernate ORM 5.0的第二候选发布。由于某些管理JPA环境中类加载方式存在错误,需要进行CR2。详细信息请参阅HHH-9887。自CR1以来,主要更改包括
修正ClassLoader使用
这是上述提到的阻塞问题。问题会出现在通过JPA集成SPI(javax.persistence.spi.PersistenceUnitInfo#getNewTempClassLoader
)传递“临时ClassLoader”到Hibernate的环境中,并表现为ClassCastExceptions
。
二级缓存SPI改进
二级缓存SPI得到改进,允许缓存提供者生成缓存键。这包括以下方法的添加
-
org.hibernate.cache.spi.access.EntityRegionAccessStrategy#generateCacheKey
-
org.hibernate.cache.spi.access.CollectionRegionAccessStrategy#generateCacheKey
-
org.hibernate.cache.spi.access.NaturalIdRegionAccessStrategy#generateCacheKey
禁用关键字作为标识符自动引号的能力
5.0版本中的一个新特性是自动引号化被认为是底层数据库中关键字的标识符。由于此支持是新的,通常方言在认为什么是关键字方面过于激进。因此,我们添加了一个新设置,如果它导致您的应用程序出现问题,可以禁用此行为。这可以通过在配置设置中将hibernate.auto_quote_keyword
指定为false来控制。
杂项
此外,还包括了许多其他改进和错误修复。有关更改的完整列表,请参阅更改日志。
发布标签可在 GitHub 上找到。
如往常一样,请访问 https://hibernate.com.cn/orm/downloads/ 获取有关获取发布版本的信息。