欢迎反馈:Spring 5 系统需求

工程 | Juergen Hoeller | 2015年6月10日 | ...

正如你可能从我的Java EE 7 博文中了解到的那样,我们正在计划一个 Spring Framework 5.0 版本,目标是在 2016 年发布。届时我们将跟踪 JDK 9 的候选版本,因为我们的关键主题之一就是全面支持 JDK 9。

Spring 5 的功能规划仍在进行中。我们将在今年的SpringOne上展示更深入的计划,敬请期待!不过,我想借此机会征求您对我们预期系统需求的反馈。

我们将最低 JDK 版本提升到 JDK 8+。这是前提条件,因为它使我们能够在整个框架中拥有更简洁的代码库,在核心接口中引入默认方法实现,并在核心抽象中依赖 JDK 8 API 类型(例如 CompletableFuture、java.util.function 接口)。

我们也打算软升级 EE 基线。这有点棘手,因为我们实际上在这里有单独的需求——我们需要考虑企业级生产环境中的采用率。

  • 我们将最低 Servlet 版本提升到 Servlet 3.0+(从我们目前的 Servlet 2.5 运行时兼容性),但不会更高,因为我们希望 Spring 5 应用程序仍然能够在基于 EE 6 的服务器上运行。请参阅我之前的博文,了解为什么鉴于 Java EE 7 的市场状况以及许多仍然基于 Servlet 3.0 API 的服务器,这是不可避免的。
  • 我们将保持 JMS 1.1+ 的兼容性,因为除了 EE 7 问题之外,我们预计企业中的消息代理不一定都升级到 JMS 2.0。Spring 的 JMS 支持会自动适应 JMS 2.0,因此功能方面不应该有任何不足。只是很遗憾我们必须继续支持 2002 年的 JMS 1.1 API……
  • 我们希望提升到 JPA 2.1+ 和 Bean Validation 1.1+,但我们似乎束手无策:TomEE 1.7 和 JBoss EAP 6.4 中具有严格的 JPA 2.0 和 Bean Validation 1.0 API,而 WebLogic 12.1.3 具有 JPA 2.1 但没有 Bean Validation 1.1 API(尽管它们是相关的)。
  • 这意味着我们将不得不继续检测 JPA 2.1/BV 1.1,自动适应它们——或者我们将需要应用程序本地捆绑 JPA 2.1/BV 1.1 API jar 和相应的提供程序。可能的结果是,我们将简化我们的设置以适应 JPA 2.1,只是通过回退检查来容忍运行时的 JPA 2.0,这类似于我们目前处理 Servlet 3.0 与 2.5 的方式。

从您的角度来看,上述假设是否可行?您是否有将 EE 6 服务器单独升级到 JPA 2.1/Bean Validation 1.1 的经验,例如通过在应用程序中本地交付相应的 API 和提供程序?欢迎任何反馈!

请注意:如果您仍然使用 JDK 6 或 7,无需担心:我们还计划在明年年初发布 Spring Framework 4.3,该版本将遵循 Spring 4 的系统需求。但是,这将是该系列的最后一个功能版本,Spring Framework 4.x 之后将进入简单的维护阶段。

获取 Spring 新闻通讯

通过 Spring 新闻通讯保持联系

订阅

领先一步

VMware 提供培训和认证,以加速您的进步。

了解更多

获得支持

Tanzu Spring 在一个简单的订阅中提供对 OpenJDK™、Spring 和 Apache Tomcat® 的支持和二进制文件。

了解更多

即将举行的活动

查看 Spring 社区中所有即将举行的活动。

查看全部