【QCon】精华内容上线92%,全面覆盖“人工智能+”的典型案例!>>> 了解详情
写点什么

Java 新闻汇总:Spring 发布,Resilience4j,Open Liberty,GlassFish,Kotlin 1.8-Beta

  • 2022-12-06
    北京
  • 本文字数:3553 字

    阅读完需:约 12 分钟

Java新闻汇总:Spring发布,Resilience4j,Open Liberty,GlassFish,Kotlin 1.8-Beta

JDK 20

JDK 20 的早期访问构建Build 25已在上周发布,主要针对 Build 24 的更新,以及多个问题修复。关于该版本更多内容请参见更新说明

 

针对JDK 20,欢迎开发者通过Java Bug数据库提交问题。

Spring 框架

继上周Spring框架主要版本的发布后,VMware 跟进了更多项目的主要版本发布。这些主要版本中值得关注的有:Spring Boot 3.0、Spring Web服务 4.0、Spring安全 6.0、Spring批处理 5.0、Spring授权服务器 1.0、Spring REST文档 3.0、Spring for GraphQL 1.1.0、Spring for Apache Kafka 3.0,以及Spring for RabbitMQ 3.0(Spring AMPQ),均以 JDK 17 及 Jakarta EE 9 为基线。

 

在 Spring Boot 2.0发布后的四年半里,经过一年多中超过5800个提交的酝酿,Spring Boot 3.0 已经可供Java社区使用。与 Spring 框架 6.0 类似,主要更新亮点包括:支持用 GraalVM生成原生镜像,取代实验性质的 Spring Native 项目;优化 Micrometer 及 Micrometer Tracing 的可观察性。关于该版本更多内容请参见更新说明

 

Java Champion 及首位 Spring 开发者倡导Josh Long最近接受了 InfoQ 的采访,讲述了他对 Spring 框架 6.0 及 Spring Boot 3.0 这两个主要版本的看法。

 

Spring Boot 的2.7.6版本及2.6.14版本均带来了问题修复、文档改善以及依赖升级,如 Spring 框架 5.3.24、Spring Web 服务 3.1.4、Hibernate 5.6.14.Final、PostgreSQL 42.3.8、Reactor 2020.0.25,以及 Spring REST 文档 2.0.7。关于该版本的更多内容请参见版本2.7.6以及版本2.6.14的更新说明。根据 VMware 的开源政策,版本 2.6.14 是 2.6 发布的最后一个版本。

 

Spring Web 服务的 4.0发布重点如下:通过 GitHub 版本中变更日志的使用,追踪每次里程碑版本基础上的问题条目;折叠相同 catch 代码块或分支;更新文档中语法及拼写;依赖更新至 Spring 框架 6.0、Spring 安全 6.0.0、nexus-staging-maven-plugin 1.6.13。关于该版本的更多内容请参见更新说明

 

Spring 安全 6.0 版本及 5.8 版本均已发布

  • 版本 6.0 新增与 Spring 可观测性的集成,支持 Spring 框架 6.0 所提供的 AOT 处理。关于该版本更多内容及其他突破性变更,请参见新内容页面。

  • 版本 5.8 提供的增强功能包括:优化会话处理;对AuthorizationManager 接口的扩展支持;对跨站请求伪造(CSRF)漏洞的额外深层防御。关于该版本的更多细节可参见新内容页面。

 

Spring 批处理 5.0 已经发布,其特点包括:为DefaultBatchConfiguration 类提供了新的getDataSource() 方法;支持 Micrometer 及 Micrometer Tracing 的可观察性;优化SystemCommandTasklet类的测试;在FieldExtractor 接口中实现了 Java Records;支持在SimpleJobOperatorSimpleJobExplorer类中配置事务管理器。关于该版本的更多细节请参见更新说明

 

如今距离 Spring 授权服务器首次亮相Java 社区以来已经两年半了,这次的 1.0 版本发布带来了针对 Spring 框架 6.0、Spring 安全 6.0 及 6.0-RC2、Spring Boot 3.0-RC2、Jakarta Servlet 6.0、HyperSQLDB 2.7.1,以及Jackson 2.14 的新功能和依赖升级。关于该版本的更多细节请参见更新说明

 

Spring Authorization Server 0.4 也已发布,其特点包括:到 JUnit 5 的升级;更新链接到当前版本的 OAuth 2.1;断言(assert) JdbcRegisteredClientRepository类中标识符的唯一性;新增日志以保持与 Spring 安全的统一性;依赖升级至 Spring 框架 5.3.24、Spring 安全 5.8,以及 Jackson 2.14。关于该版本的更多细节请参见更新说明

 

Spring REST 文档 3.0 的发布内容包括:单独文档记录先前与请求参数混在一起的表单及查询参数;文档记录请求与响应 cookie;发布材料清单(BOM)坐标为org.springframework.restdocs:spring-restdocs-bom;目前与 REST Assured 整合需要 5.2 版本。Spring REST 文档 2.0 中标记为废弃的类和方法已被删除。关于该版本的更多细节请参见更新说明


Spring REST 文档 2.0.7 已经发布,其特点在于修复了以下问题:在webtestclient包中定义的类里使用自定义状态码时,记录响应的问题;通过modifyUris()方法在请求体中不恰当地转换 URL 数据时,抛出PayloadHandlingException异常。关于该版本更多细节请参见更新说明

 

Spring 框架发布补丁版本6.0.2及版本6.0.1,提供问题修复、文档优化及新功能,如:依赖Jakarta Bean Validation 3.0中标准参数名称解析;SourceHttpMessageConverter类变更为可选;完全废弃LocalVariableTableParameterNameDiscoverer 类,以避免其暴露在原生镜像中;在GeneratorStrategy 接口中定义的generate()方法变更为无法访问,以节约在转换为原生镜像时内存需求。关于这些版本的更多细节请参见版本6.0.2版本6.0.1的更新说明。

 

Spring Modulith版本 0.1 的发布完成了对现已停用的前代Moduliths项目的整合。该版本提供了问题修复及对 Spring 3.0 的依赖升级。Spring Modulith 项目负责人及 VMware 的 Spring 的员工兼工程师Oliver Drotbohm最近接受了 InfoQ 关于 Spring Modulith 项目的采访

 

Spring for GraphQL 1.1 版本已经发布,提供对以 GraphQL Java 19(及 JDK 17 和 Jakarta EE 9)为基线的支持,并与 Spring Boot 3.0 保持一致。其他新功能包括支持:Micrometer可观察性,通过 Micrometer 上下文传播库(Micrometer Context Propagation Library)进行上下文传播;AOT 及 GraalVM 原生镜像;对GraphQlArgumentBinder 类更新以捆绑 Java Collections;新增ArgumentValue 类用于暴露参数是否完全被忽略的信息。关于该版本的更多细节请参见发布说明

 

Spring for GraphQL 1.0.3 的版本发布也提供了问题修复、功能增强及文档优化等特点。关于该版本的更多细节请参见发布说明

 

Spring for Apache Kafka 3.0 及 Spring for RabbitMQ 3.0 均已可在 Java 社区使用

  • Spring for Apache Kafka 3.0 中更新特点包括:支持跨多个测试实例中使用EmbeddedKafkaBroker  类的全局单一实例;对@RetryableTopic注解带来了若干增强,并采取了非阻塞式重试;在KafkaTemplate 类中定义的方法会返回CompletableFuture ,而不是已废弃的ListenableFuture。关于该版本的更多细节请参见新内容页面。

  • Spring for RabbitMQ 3.0 中更新特点包括:支持 RabbitMQ 中超级流里单一活跃消费对象;定义在AsyncRabbitTemplateRabbitStreamTemplate 中的方法会返回CompletableFuture 而不是类似 Spring for Apache Kafka 的ListenableFuture ;删除了先前已废弃的远程支持。关于该版本的更多细节可参见新内容页面。

Open Liberty

IBM 已发布Open Liberty 22.0.0.12 版本,提供针对漏洞CVE-2022-37734的问题修复,该漏洞存在于GraphQL Java,攻击者可通过发送消耗 CPU 资源的 GraphQL 查询发起拒绝服务攻击。鼓励开发者升级至 GraghQL Java 19.0 及以上、18.3,以及 17.4 版本。


Eclipse GlassFish

Eclipse 基金会提供了 GlassFish第十个里程碑版本,7.0.0。该版本特点包括:集成了 Helidon Config 3.0.2、Eclipse Jersey 3.1.0 和 Shoal 3.0.1;增加了 REST JDBC 管理测试;支持 MicroProfile JWT;为GlassFish 7.0.0-M9增加了 Jakarta MVC 2.1 TCK 结果。GlassFish 7.0.0-M10 可在 JDK 11 至 JDK 19 的版本上编译并运行,该版本被认为是包含了 Jakarta EE 10 APIs 最终版及 Jakarta EE 10 最终实现组件的候选版本。

 

GraalVM 原生构建工具

在前往 1.0 版本的大路上,Oracle创新实验室已发布原生构建工具0.9.18版本,该工具是由与 GraalVM 原生镜像互操作插件组成的 GraalVM 项目。这一最新版本提供了:对 GraalVM 版本的修整,修复 Windows 支持的问题;对 GraalVM 元数据存储库 0.2.5 的升级;通过增加了对escapeArg() 方法的测试及取消用args参数转义的正则参数,增强NativeImageUtils类。关于该版本的更多细节请参见更新日志

 

Resilience4j

Java 的容错库Resilience4j的 2.0.0 版本已经发布,更新包括对 JDK 17、Kotlin 1.7.20、Spring Boot 2.7 以及 Micronaut 3.7.3 的依赖升级。Java 功能库Vavr的依赖项被移除。InfoQ 后续将跟进更为详尽的报道。

 

Apache Tomcat

Apache Tomcat 8.5.84 已被发布,其问题修复主要包括:评估包含 lambda 表达式的表达式语言时的并发问题;修正了 HTTP cookies 中expires 属性的时间格式问题,从破折号分割日、月、年改为由空格分割,以与RFC 6265保持一致。同时也包括对Apache Commons Daemon 1.3.2 的依赖升级。关于该版本的更多详情可参见更新日志


Kotlin

JetBrains发布了 Kotlin 1.8.0-Beta 版本,其特点包括:兼容 Gradle 7.3;在标准库中递归 Path 效用函数;在 Kotlin/Native 中支持 Xcode 14;停止对旧版 JVM 后端的支持。关于该版本的更多细节可参见新内容界面。

 

原文链接:

Java News Roundup: Major Spring Releases, Resilience4j, Open Liberty, GlassFish, Kotlin 1.8-Beta


相关阅读:

Java 近期新闻:Spring Framework 6、JCP 选举、Valhalla 项目、OpenJDK 更新

对话 Spring 大神:Spring 生态系统的新时代来了!

Meta 将百万行代码从 Java 移植到 Kotlin

2022-12-06 08:009692

评论 1 条评论

发布
用户头像
别搞没必要的翻译啊 像是 spring webservice翻译成spring web服务,spring security翻译成spring安全
2022-12-06 11:56 · 浙江
回复
没有更多了
发现更多内容

spring-注入配置

Isuodut

搞微服务用阿里开源的 Nacos 真香啊!

阿里巴巴 开源 编程

面试官问我redis数据类型,我回答了8种

数据库 学习 面试

【Mycat】Mycat核心开发者带你看尽Mycat三大核心配置文件!!

冰河

分布式数据库 中间件 mycat

阿里突遭断网断电!双11最惊险一幕刚刚曝光

Java架构师迁哥

甲方日常 50

句子

工作 随笔杂谈 日常

架构师训练营 1 期 - 第八周 - 性能优化 2

三板斧

极客大学架构师训练营

iptables 端口转发

田振宇

MySQL 的 join 功能弱爆了?

程序员历小冰

MySQL postgres 多表join

SpringBoot启动原理

编程门槛 框架设计 spring Boot Starter】

面试蚂蚁金服,首战被MySQL惨虐,熬夜啃透这份阿里面经复盘一个月再战拿下P7offer

比伯

Java 程序员 架构 面试 阿里

11.11 程序员的 1111 种死法

京东科技开发者

程序员 程序人生

浅谈程序员的“内卷化”

数据社

目标检测-框架之darknet-数据读取

Dreamer

【DevOps实践】企业应用场景众多,怎样选择合适的代码分支模型?

嘉为蓝鲸

git DevOps 软件开发 持续交付 代码管理

双“11”搞促销?本文教你用贪心算法来盘他!

Java架构师迁哥

Java动态修改LOGGER日志级别

Zhendong

Java Arthas

【概念篇】你真正了解越来越火的“数据驱动” 吗?

Java架构师迁哥

技术干货:Apache Pulsar 在移动云上的应用

Apache Pulsar

大数据 开源 云原生 Apache Pulsar

双“11”搞促销?用贪心算法来盘他!

王磊

算法

LeetCode题解:剑指 Offer 22. 链表中倒数第k个节点,使用栈,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

要求自愿降薪,员工内心普遍满意:“服从”是如何发生的?

脑极体

架构训练营-week8-数据结构与算法,网络,IO

于成龙

极客大学架构师训练营 架构训练营

Java批量导入去除重复数据并返回结果,我差点就被放倒了

小Q

Java 学习 程序员 架构

一次完整的JVM堆外内存泄漏故障排查记录

Zhendong

当Tomcat遇上Netty,我这一系列神操作,同事看了拍手叫绝

小Q

Java 学习 程序员 架构 面试

「架构师训练营」第 4 周作业

小黄鱼

极客大学架构师训练营

腾讯WeMap,一颗“孢子”的数智化之旅

脑极体

Reactor详解之:异常处理

程序那些事

响应式 reactor 程序那些事 响应式系统 响应式架构

阿里首发MySQL“完美日记”,基础+优化+事务+集群+锁+主从复制+安全备份

Java架构追梦

Java MySQL 数据库 架构 面试

Pulsar Summit Asia 2020 | 场景案例论坛(下):多行业,多场景

Apache Pulsar

大数据 开源 Apache Pulsar

Java新闻汇总:Spring发布,Resilience4j,Open Liberty,GlassFish,Kotlin 1.8-Beta_语言 & 开发_Michael Redlich_InfoQ精选文章