java - 与java8兼容的最低 hibernate 版本

标签 java hibernate java-8 apache-tomee

我花了很长时间试图找出支持在 java8 JRE 上运行的 Hibernate 的最低版本,其中用户代码将使用 java8 功能。

我找到了 this bug ,但它谈到了在 hibernate 中使用 java8 特性,它计划用于 hibernate 5.2,并且肯定 hibernate 4.3.1 已经支持 java8,因为 Wildfly 发布它并声称完全支持 java8。

我试图找到 in the hibernate bug tracker与 java8 相关的错误,但同样都是“太新”。

最后,我在 Hibernate 发行说明中搜索了 .0 版本,但再次没有成功:发行说明似乎只描述了自上一个 RC 或 beta 版本以来的变化...我尝试跟踪所有 RC 和 beta 4.3.0.Final 和 4.2.0.Final 的发布,但没有找到这样的提及。

我们目前正在使用 Hibernate 4.2.12.Final,我想知道我们是否可以开始使用 java8,或者我们是否需要升级到更新版本的 hibernate(大概是 4.3.x)。

在某些情况下,我们使用 TomEE 作为应用服务器。 1.7.0 刚刚发布,支持 java8。但是,如果我们必须升级到 hibernate 4.3.x,我有点担心我们不能将 Hibernate 4.3.x 与 TomEE 一起使用,因为我已经看到:"However, Hibernate 4.3+ (JPA 2.1) is not supported by TomEE, because it's Java EE 7." .因此,如果可能的话,我们宁愿坚持使用 4.2.x 的时间更长一些。

编辑:我找到了this ,有人说“我们使用 hibernate (并且 4.3.x 支持 java 8)”。所以可能需要 4.3.x。

最佳答案

这取决于您所说的“用户代码将使用 java8 功能”是什么意思。在我工作的地方,我们仍然使用旧版本的 Hibernate 3 和 Java 8,并且运行良好。但是,我们的实体都不使用 Java 8 功能,只有使用我们实体的代码才使用。

我认为 Hibernate 和 Java 8 的问题与了解如何映射使用 lambda 或默认方法的实体以及新的 Optional 类和 time 包有关。

如果你不需要映射到那些,你应该没问题。

关于java - 与java8兼容的最低 hibernate 版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25360927/

相关文章:

Java 8 - 使用 JsonObject (javax.json) - 如何确定一个节点是否有子节点?

xml - 将 tz 偏移量内不带冒号的 ISO 日期字符串转换为 XMLGregorianCalendar

java - 如何在 Windows 7 操作系统中运行 .class 文件?

java - 如何更新 Cucumber-JVM 的 --format 选项?

java - 使用另一个 JDK 编译 Maven 依赖项

java - Android Studio 找不到属性 XMLConstants.ACCESS_EXTERNAL_DTD

mysql - 在 Hibernate 中查询

java - hibernate 拦截器后保存?

java - 在 hibernate session 中禁用过滤器

Java Instant 到 LocalDateTime 尾随零