Spring认证-Spring Framework 6 的 Java 17 和 Jakarta EE 9 基线

简介: 正如在 SpringOne 上宣布的那样,Spring Framework 6 和 Spring Boot 3 计划在 2022 年第四季度达到通用可用性的高端基准:

正如在 SpringOne 上宣布的那样,Spring Framework 6 和 Spring Boot 3 计划在 2022 年第四季度达到通用可用性的高端基准:

Java 17+(来自 Spring Framework 5.3.x 行中的 Java 8-17)

Jakarta EE 9+(来自 Spring Framework 5.3.x 系列中的 Java EE 7-8)

这一前瞻性基线将为我们的 API 设计和集成工作带来显着优势,贯穿您的应用程序代码,并在未来许多年内为框架和您的应用程序提供未来证明。然而,这当然是有代价的:基于 Spring Framework 6 和 Spring Boot 3 的应用程序在运行时至少需要 JDK 17,以及至少 Tomcat 10 / Jetty 11(为了与 Jakarta EE 9 兼容)。更重要的是,您的应用程序源代码可能需要进行一些更改:例如,在 Jakarta EE 9 中,无论您在哪里接触 Servlet API、JPA、Bean 验证等,javax到jakarta命名空间的更改。

虽然这听起来可能有点激进,但请记住,我们谈论的是 2022 年第四季度的发布:到那时,不仅 JDK 17 将取代 JDK 11 作为下一个长期支持版本超过一年,而且JDK 18 和 JDK 19 本身将被 JDK 18 和 JDK 19 取代,作为当时可用的功能版本,而 JDK 20 已经接近其功能冻结。Jakarta EE 9 也是如此:我们预计到那时 Jakarta EE 10 会发布,并且支持另一代 Tomcat、Jetty 和 co 作为运行时选项。保持上面的基线作为最低限度,这允许在 Spring Framework 6.x 代中获得进一步的 Java 演变,Java 17 和 Jakarta EE 9 只是一个开始。

同时,Spring Framework 5.3.x 和 Spring Boot 2.x 暂时仍在积极开发中,今年 11 月推出 Spring Boot 2.6,然后在 2022 年 5 月推出 Spring Boot 2.7。一旦最终的 Spring Boot 2.x 功能分支已经达到(尚未确定这将是 2.7 版本还是可能是更高版本),该分支将与 Spring Framework 5.3.x 一起变成一个扩展的开源维护阶段,与 Spring 并行几年的重叠Framework 6 和 Spring Boot 3。考虑我们之前对 Spring Framework 3.2.x 和 4.3.x 维护分支的处理,以了解这将如何在实践中产生。

因此,如果您打算在 JDK 8 或 11 上再使用几年,或者即使您打算在 JDK 17 上使用 Spring Framework 5.3 基础设施几年,请放心,我们对 Spring Framework 5.3.x 和Spring Boot 2.x 会让您满意。一旦您准备好为下一代 Java 生态系统准备您的应用程序,您可以按照自己的节奏随意升级到 Spring Framework 6 和 Spring Boot 3,以及 Tomcat、Jetty 和 co - 以及新的基础设施优势和新的架构选项变得对你可用。我们希望您在接下来的几年里会欣赏这些选择。

PS:如果您想知道 JDK 11 作为 LTS 一代,请注意 JDK 11 的商业支持时间框架比 JDK 8 短,JDK 11 LTS 已经在 2023 年末逐步淘汰。JDK 17 作为下一代 LTS 将提供至少到 2026 年的支持时间表。我们认为 JDK 8 在生态系统中扮演着独特的角色;相比之下,JDK 11 是一个过渡版本。此外,JDK 17 提供了一组最新的语言、API 和 JVM 增强功能,使其成为更具吸引力的升级。最后但并非最不重要的是,在同一代 Spring Framework 6.x 中,仍然会有 JDK 23 LTS (2024) 和 JDK 29 LTS (2027) 支持,无论如何将最终支持范围变成相当广泛的 JDK 17-29 .

相关文章
|
1月前
|
安全 Java 数据库
安全无忧!在 Spring Boot 3.3 中轻松实现 TOTP 双因素认证
【10月更文挑战第8天】在现代应用程序开发中,安全性是一个不可忽视的重要环节。随着技术的发展,双因素认证(2FA)已经成为增强应用安全性的重要手段之一。本文将详细介绍如何在 Spring Boot 3.3 中实现基于时间的一次性密码(TOTP)双因素认证,让你的应用安全无忧。
101 5
|
23天前
|
人工智能 前端开发 Java
基于开源框架Spring AI Alibaba快速构建Java应用
本文旨在帮助开发者快速掌握并应用 Spring AI Alibaba,提升基于 Java 的大模型应用开发效率和安全性。
基于开源框架Spring AI Alibaba快速构建Java应用
|
1月前
|
前端开发 Java 数据库连接
Spring 框架:Java 开发者的春天
Spring 框架是一个功能强大的开源框架,主要用于简化 Java 企业级应用的开发,由被称为“Spring 之父”的 Rod Johnson 于 2002 年提出并创立,并由Pivotal团队维护。
50 1
Spring 框架:Java 开发者的春天
|
1月前
|
Java 数据库连接 开发者
Spring 框架:Java 开发者的春天
【10月更文挑战第27天】Spring 框架由 Rod Johnson 在 2002 年创建,旨在解决 Java 企业级开发中的复杂性问题。它通过控制反转(IOC)和面向切面的编程(AOP)等核心机制,提供了轻量级的容器和丰富的功能,支持 Web 开发、数据访问等领域,显著提高了开发效率和应用的可维护性。Spring 拥有强大的社区支持和丰富的生态系统,是 Java 开发不可或缺的工具。
|
1月前
|
存储 人工智能 Java
将 Spring AI 与 LLM 结合使用以生成 Java 测试
AIDocumentLibraryChat 项目通过 GitHub URL 为指定的 Java 类生成测试代码,支持 granite-code 和 deepseek-coder-v2 模型。项目包括控制器、服务和配置,能处理源代码解析、依赖加载及测试代码生成,旨在评估 LLM 对开发测试的支持能力。
38 1
|
1月前
|
人工智能 缓存 Java
深入解析Spring AI框架:在Java应用中实现智能化交互的关键
【10月更文挑战第12天】Spring AI 是 Spring 框架家族的新成员,旨在满足 Java 应用程序对人工智能集成的需求。它支持自然语言处理、图像识别等多种 AI 技术,并提供与云服务(如 OpenAI、Azure Cognitive Services)及本地模型的无缝集成。通过简单的配置和编码,开发者可轻松实现 AI 功能,同时应对模型切换、数据安全及性能优化等挑战。
114 3
|
1月前
|
Java Maven Spring
用Spring导致的无法运行Java文件的问题的解决方案
本文提供了解决在IntelliJ IDEA社区版中使用Spring Initializr插件创建Spring项目后,Java文件无法运行的问题的方法,主要是通过加载Maven项目来解决。
73 0
|
3月前
|
Java Spring
【Azure Spring Cloud】Spring Cloud Azure 4.0 调用Key Vault遇见认证错误 AADSTS90002: Tenant not found.
【Azure Spring Cloud】Spring Cloud Azure 4.0 调用Key Vault遇见认证错误 AADSTS90002: Tenant not found.
|
3月前
|
Java 开发工具
【Azure Developer】Java代码访问Key Vault Secret时候的认证问题,使用 DefaultAzureCredentialBuilder 或者 ClientSecretCredentialBuilder
【Azure Developer】Java代码访问Key Vault Secret时候的认证问题,使用 DefaultAzureCredentialBuilder 或者 ClientSecretCredentialBuilder
|
3月前
|
Java Spring 安全
Spring 框架邂逅 OAuth2:解锁现代应用安全认证的秘密武器,你准备好迎接变革了吗?
【8月更文挑战第31天】现代化应用的安全性至关重要,OAuth2 作为实现认证和授权的标准协议之一,被广泛采用。Spring 框架通过 Spring Security 提供了强大的 OAuth2 支持,简化了集成过程。本文将通过问答形式详细介绍如何在 Spring 应用中集成 OAuth2,包括 OAuth2 的基本概念、集成步骤及资源服务器保护方法。首先,需要在项目中添加 `spring-security-oauth2-client` 和 `spring-security-oauth2-resource-server` 依赖。
55 0
下一篇
无影云桌面