写点什么

Java 近期新闻:Spring Boot 3.2、Spring Pulsar 1.0、Hibernate 6.4、JEP 447

  • 2023-12-06
    北京
  • 本文字数:4135 字

    阅读完需:约 14 分钟

大小:2.06M时长:12:01
Java近期新闻:Spring Boot 3.2、Spring Pulsar 1.0、Hibernate 6.4、JEP 447

OpenJDK


在结束了评审之后,JEP 447(super()前置语句(预览)),已经从 Proposed to Target 进入到 Targeted( JDK 22)状态。这个 JEP 来自Project Amber,提议允许在构造函数的 this()super() 之前出现不引用正在创建的实例的语句并保留构造函数现有的安全性和初始化保证。Oracle 技术顾问成员Gavin Bierman为 Java 社区提供了这个 JEP 的初始规范,供社区评审并提供反馈意见。


JEP 461(Stream Gatherers(预览))已经从 Candidate 计入到 Proposed to Target( JDK 22)阶段。这个 JEP 提议增强 Stream API,让其支持自定义中间操作。“流式管道操作将可以通过现有内置中间操作不易实现的方式转换数据。”更多关于该 JEP 的细节可在 Oracle Java 平台组软件架构师Viktor Klang撰写的原始设计文档中找到。评审于 2023 年 11 月 29 日结束。


JEP 462(结构化并发(第二次预览))已经从 Candidate 计入到 Proposed to Target( JDK 22)阶段。这个 JEP 建议在 JDK 22 中重新预览该 API,以获取自前一轮预览以来更多的反馈:JEP 453(结构化并发(预览),已在 JDK 21 中发布)。这个功能通过引入结构化并发来简化并发编程,“将不同线程中运行的相关任务组视为单个工作单元,从而简化错误处理和取消操作,提高可靠性并增强可观察性。”评审于 2023 年 12 月 1 日结束。


JEP 458(启动多文件源码程序)已经从 Candidate 计入到 Proposed to Target( JDK 22)阶段。这个 JEP 提议增强 Java Launcher,可以执行作为一个或多个 Java 源代码文件提供的应用程序,让小型应用可以在延迟完整项目设置的情况下逐渐过渡到大型应用。评审于 2023 年 12 月 1 日结束。


JDK 22


JDK 22 早期访问构建版本Build 25已发布,其中包含来自 Build 24 的更新,修复了各种问题。有关此版本的更多详细信息,请参阅版本说明


对于JDK 22,开发者可以通过Java Bug Database报告 Bug。


Spring Framework


Spring Boot 3.2.0发布,包含了 bug 修复、文档改进、依赖项升级和新特性,例如:支持Oracle Free,它是Oracle XE的替代品,包含了 Testcontainers 和 Docker Compose;修改了参数名发现的方式,通过解析字节码替代推断参数名;支持 Jetty 12;支持 Spring Framework 6.1 中引入的新RestClient接口。有关此版本的更多详细信息,请查看版本说明


类似地,Spring Boot 3.1.63.0.132.7.18包含了 bug 修复、文档改进、依赖项升级,并新增了一个特性,即将默认的 Cloud Native Buildpacks(CNB)升级为Paketo Jammy,因为 Paketo Bionic Builder 被声明为不安全的。有关这些版本的更多详细信息,请查看3.1.63.0.132.7.18的版本说明。


Spring Framework 6.1.1发布,修复了 bug、改进了文档,并引入了新特性,例如:在StreamUtils类的copy(String)方法中跳过不必要的缓冲区分配;解决了JDK 17isReadable()方法并发泄漏大量非堆内存的问题。有关此版本的更多详细信息,请查看版本说明


Spring Security 6.2.0发布,包含了 bug 修复、依赖项升级和新特性:在AuthorizationManagerBeforeReactiveMethodInterceptorAuthorizationManagerAfterReactiveMethodInterceptor类中支持 Kotlin 协程;简化了配置 OAuth2 客户端组件模型。有关此版本的更多详细信息,请查看版本说明新特性页面。


Spring Authorization Server 1.2.0发布,包含了文档改进、依赖项升级和新特性,例如:允许在 Spring Security 的AuthorizationGrantType类中为AUTHORIZATION_CODEREFRESH_TOKEN授权类型配置可配置的刷新令牌策略;引入了 Ahead-of-Time(AOT)优化或AOT提示,用于解决使用 GraalVM 生成原始镜像失败的问题。有关此版本的更多详细信息,请查看版本说明


Spring for GraphQL 1.2.4发布,包含了 bug 修复、文档改进、依赖项升级和新特性,例如:改进了在ResponseMapGraphQlResponse类中解析 GraphQL SourceLocation类的linecolumn属性;在ArgumentValueValueExtractor类中使用isOmitted()方法而不是ArgumentValue类的isPresent()方法来实现null 参数验证。有关此版本的更多详细信息,请查看版本说明


Spring Integration 6.2.0发布,包含了一些重要的变更,如:修复HazelcastMetadataStoreTests类中的竞态条件;FtpSession类中更健壮的readRaw()finalizeRaw()方法,消除由于550 FTP Response错误引起的异常;由于 MacOS 上的未知延迟会导致测试失败,增加 FTP RotatingServersTests类的超时时间。有关此版本的更多详细信息,请查看版本说明新特性页面。


Spring Session 3.2.0发布,包含了许多依赖项升级和一个新特性,即对于自定义实现CookieSerializer接口中未设置rememberMeRequestAttribute属性的情况,改进了文档和日志记录。有关此版本的更多详细信息,请查看版本说明新特性页面。


Spring Vault 3.1发布,改进了文档、升级了依赖项并新增了特性,例如:在VaultTokenRequest类支持 HashiCorp Vault role_nameentity_alias参数;新增了AuthenticationEventMulticaster接口,用于管理多个AuthenticationEventAuthenticationErrorEvent对象并向其发布事件。有关此版本的更多详细信息,请查看版本说明


Spring for Apache Pulsar 1.0.0发布,带来了显著的变更,例如:PulsarAdministration类接受多个PulsarAdminBuilderCustomizer接口实例;避免 Spring Boot 依赖 Spring for Apache Pulsar 时的“鸡和蛋”问题。有关此版本的更多详细信息,请查看版本说明


Spring for Apache KafkaSpring for RabbitMQ 3.1.0发布,包含了 bug 修复、文档改进和依赖项升级。Spring for Apache Kafka 的新特性包括:删除EmbeddedKafkaKraftBroker类的brokerListProperty属性设置,该设置可能导致在属性为null时抛出异常;提供了一种定义与@KafkaListener注解关联的ContainerCustomizer Bean 名称的方式。更多详细信息,请参阅Apache KafkaRabbitMQ的版本说明。


Spring Modulith 1.1.0 和 1.0.3发布,包含了 Bug 修复、依赖项升级和新特性,例如:使用 Spring Framework 的BeanFactoryInitializationAotProcessor接口而不是ApplicationModules类在原生镜像上初始化执行器端点;Spring Data MongoTemplate类中定义的updateFirst()方法不支持排序操作,开发者应该使用findAndModify()方法。有关此版本的更多详细信息,请查看1.1.01.0.3的版本说明。


Eclipse Store


Eclipse 基金会发布了EclipseStore 1.0.0,这是一个 Java 本地持久化库,从之前的MicroStream Storage 8.1.1迁移而来,新版本首次由 Eclipse 基金会发布。有关此发布的更多详细信息,请查看版本说明


Quarkus


Red Hat 发布了Quarkus 3.5.3,其中包含了一些重要的变更,例如:MultipartFormDataOutput类的HashMap切换到了LinkedHashMap,以保持用户的输入顺序;确保在 WebSocket 注入器之前对 GraphQL 进行身份验证和授权。有关此版本的更多详细信息,请查看更新日志


类似地,Quarkus 3.2.9.Final 也已发布,包含了以下重要变更:解决了带有Throwable参数的@ServerResponseFilter注解在 REST 资源抛出异常时未被调用的问题;处理了通过CacheResultInterceptor类缓存 REST 调用响应时发生的重复上下文混合问题。有关此版本的更多详细信息,请查看更新日志


Hibernate


Hibernate ORM 6.4.0.Final发布,带来了一个新的@SoftDelete注解,用于支持软删除,删除与非删除对应值 active/inactive;实现了在 HQL 和 Criteria 查询中处理数组的其余函数;支持在 JDK Flight Recorder 中编写 Hibernate 特定事件。


Hibernate Search 7.0.0 的第二个候选版本发布,包括:Bug 修复;与 Jakarta EE、Hibernate ORM 的基于鉴别器的多租户、Elasticsearch 8.11、OpenSearch 2.10 和 2.11 兼容;依赖项升级到 Hibernate ORM 6.4.0.Final 和 Apache Lucene 9.8。Hibernate Search 7.0.0.CR2 需要 JDK 最低版本为 11。


Infinispan


Infinispan 15.0.0.Dev05 已发布,其显著变化包括:在 Spring 测试中使用 Spring Framework 的@DirtiesContext注解来强制停止缓存管理器;改进了WriteSkewConsistencyTest类,解决了随机出现失败问题;将Jakarta JSON Processing的依赖从javax.*命名空间迁移到jakarta.*,以符合 WildFly Elytron 2.x 的要求。有关此版本的更多详细信息,请查看问题列表


类似地,Infinispan 14.0.21.Final 也已发布,其显著变化包括:Java ConcurrentMap接口中的默认方法应确保在遇到错误时关闭迭代器;在实现虚拟线程方面的改进;创建用于测量节点之间延迟的指标。有关此版本的更多详细信息,请查看问题列表


JHipster


JHipster Lite 0.49.0 已发布,包含了 Bug 修复、依赖项升级和特性增强:GraalVM 自动化构建;在Dummy特性中添加了package-info.java文件。有关此版本的更多详细信息,请查看版本说明


JBang


JBang 0.113.0 和 0.112.4 带来了一些显著变化,例如:命令行新的展开方式,可以解析表达式内的依赖项并用类路径替换它(请参见下面的示例);修复了通过--debug命令行参数提供自定义端口时仍然使用默认端口 4004 的问题;更新了docker-compose文件,修复测试代理需要身份验证的问题。有关这些版本的更多详细信息,请查看0.113.00.112.4的版本说明。


新的命令行展开特性允许开发者编写如下代码:


$ jbang sqlline@maxandersen -cp other args


OpenXava


OpenXava 7.2.0 包含了 Bug 修复、依赖项升级和新特性,例如:支持 JDK 21;改进日历,可以显示周或日;大量网络安全增强特性。有关此版本的更多详细信息,请查看版本说明


Testcontainers for Java


Testcontainers for Java 1.19.3 已发布,包含了 Bug 修复,例如:使用ContainerDef类注册缺失的默认网络别名;由于使用了GenericContainer类中定义的setImage()方法而导致的回归问题;以及在SQLScriptScanner中出现的大型字符串文本和 PostgreSQL 标识符的 Bug。


Gradle


Gradle 8.5.0 的第四个候选版本带来了一些新特性,例如:完全支持使用 JDK 21 进行编译、测试和运行;Kotlin DSL的改进,包括更快的初次使用和预编译 Kotlin 脚本插件的版本目录支持;改进的错误和警告报告。有关此版本的更多详细信息,请查看版本说明


JCON World


JCON World 2023大会是由Java User Group Oberpfalz组织的国际在线 Java 社区大会,已于上周举行,来自 Java 社区的 100 多名演讲者三天内做了主题演讲、组织了小时会和研讨会。


原文链接

https://www.infoq.com/news/2023/11/java-news-roundup-nov20-2023/

2023-12-06 08:004946

评论

发布
暂无评论
发现更多内容

膜拜!终于拿到了美团大佬分享的Netty源码剖析与应用PDF

公众号_愿天堂没有BUG

Java 编程 程序员 架构 面试

80W美团架构师整理分享出了Spring5企业级开发实战文档

公众号_愿天堂没有BUG

Java 编程 程序员 架构 面试

BI软件漫谈

格林海文

BI Tableau 帆软

英特尔CEO帕特·基辛格:面向未来的数字化需求,推进未来计算创新、探索与颠覆

科技新消息

上游思维:凭一己之力能做些什么?

石云升

读书笔记 8月日更 上游思维

Linux内核源码分析方法—程序员进阶必备

Linux服务器开发

操作系统 Linux内核 内核源码 底层原理 内核开发

模块五:微博评论模块高性能高可用计算架构设计

kk

架构实战营

亚信数据库AIDB通过统信UOS认证,国产自主可控项目新选择

亚信AntDB数据库

国产化 国产数据库 亚信数据库AIDB

做正确的事情,而不是把事情做正确

非著名程序员

个人成长 提升认知 认知提升 8月日更

spring-boot 2.5.4,nacos 作为配置、服务发现中心,Cloud Native Buildpacks 打包镜像,GitLab CI/CD

Zhang

gitlab nacos CI/CD spring-boot 2.5.4 CNB

python通过Matplotlib绘制常见的几种图形

Python研究者

8月日更

LVS 学习: netfilter 与 ipvs 无秘密

绅鱼片

Linux 负载均衡 LVS Netfilter IPVS

ipfs矿机公司哪家好?ipfs矿机公司实力排行?

分布式存储 Filecoin ipfs挖矿 ipfs矿机 ipfs矿商排名

BuildPacks 打包

Zhang

Docker image CNB OCI

Tron波场链智能合约系统开发案例|波场链源码搭建

Geek_23f0c3

TRONex波场智能合约 DAPP智能合约交易系统开发 波场DAPP

干货!DataPipeline2021数据管理与创新大会全篇划重点

DataPipeline数见科技

大数据 数据融合 数据管理

MySQL information_schema 系统库介绍

Simon

MySQL

手把手教你15分钟搭建人脸戴口罩识别软硬件系统

百度大脑

人工智能 EasyDL

探索技术与应用融合的区块链 实现产业良性发展

CECBC

快手基于 Flink 构建实时数仓场景化实践

阿里云大数据AI技术

InnoDB 表空间

leonsh

MySQL innodb 表空间

小布助手在面向中文短文本的实体链指比赛中的实践应用

OPPO小布助手

人工智能 算法 模型训练 智能助手 短文本

ipfs投资者靠什么赚钱?投资ipfs要多少钱?

投资ipfs要多少钱 ipfs投资者靠什么赚钱

小米和网易两位资深工程师联合编写的HBASE原理与实践PDF

公众号_愿天堂没有BUG

Java 编程 程序员 架构 面试

中国法定数字货币(DCEP)全面启航!全国普及势在必行

CECBC

量化策略APP系统开发,马丁策略交易平台

13530558032

阿里专家分享内部绝密RocketMQ核心原理与最佳实践PDF

公众号_愿天堂没有BUG

Java 编程 程序员 架构 面试

阿里专家分享的SpringCloudNginx高并发核心文档

公众号_愿天堂没有BUG

Java 编程 程序员 架构 面试

迅雷不及掩耳盗铃

escray

生活记录 8月日更 搜房记

微信架构图设计&“学生管理系统”毕设架构

Imaginary

搭建太阳系3D可视化平台,科普宇宙的未知奥秘

一只数据鲸鱼

科普 数据可视化 智慧宇宙 太空

Java近期新闻:Spring Boot 3.2、Spring Pulsar 1.0、Hibernate 6.4、JEP 447_编程语言_Michael Redlich_InfoQ精选文章