写点什么

Java 近期新闻:单查询加载、GraalVM、GlassFish、JReleaser、Quarkus、Micronaut

  • 2023-09-12
    北京
  • 本文字数:3119 字

    阅读完需:约 10 分钟

大小:1.77M时长:10:19
Java近期新闻:单查询加载、GraalVM、GlassFish、JReleaser、Quarkus、Micronaut

OpenJDK

Java社区进程(JCP)执行委员会投票通过了 JSR 396(Java SE 21平台),向着计划在 2023 年 9 月 19 日发布的 GA 版本继续迈进。

JEP 442(外部函数和内存API第3个预览版)将在即将发布的 JDK 21 中交付,JEP 草案 8310626(外部函数和内存API)预计将在 JDK 22 中交付,那是Panama项目的主要特性之一。该项目将 JVM 与定义明确的“外部”(非 Java) API 连接起来,其中包括许多 C 程序员常用的接口。

Per-Åke Minborg是 Oracle 的一名技术顾问。他在这篇博文中讨论了外部函数和内存 API 的性能优势。Minborg 提供了一个关于字符串转换的基准测试:在 JDK 21 和 JDK 22 中使用该 API vs. 使用旧的 Java 本机接口(JNI)调用。

JDK 21

Build 35仍然是 JDK 21早期访问构建的当前构建。要了解关于这个版本的更多细节,请查看发布说明

JDK 22

JDK 22早期访问构建Build 13在上周发布,其中包括 Build 12 的更新,主要是修复了各种问题。要了解关于这个版本的更多细节,请查看发布说明

对于JDK 22JDK 21,我们鼓励开发人员通过Java Bug数据库报告 Bug。

GraalVM

在迈向 1.0 版本的道路上,Oracle 实验室发布了Native Build Tools0.9.25版本。这是一个 GraalVM 项目,其中包含与 GraalVM 原生镜像进行互操作的插件。这个最新版本将依赖项升级到了GraalVM Reachability Metadata Repository 0.3.4。要了解关于这个版本的更多细节,请查看变更日志

Spring Framework

为了解决 N+1 问题,Spring Data 团队引入单查询加载(Single Query Loading)。这是一种通过单个SELECT语句加载任意聚合的技术。随着Spring Data JDBC 3.2.0-M2 的发布,该团队宣称,这项新技术是“解决 N+1 问题的开始”。类RelationalMappingContext中新增了一个方法setSingleQueryLoadingEnabled(true),用于启用单查询加载。目前,该特性只适用于简单聚合(只包含一个聚合根和其他实体的单个集合)。但其团队承诺,未来的版本将改进这一限制。

Quarkus

Red Hat发布Quarkus的 3.3.1 版本,带来了依赖项升级和一些值得注意的变化,其中包括:修复了MicrometerRecorder类中潜在的NullPointerException;在VertxPoolMetrics类中新增计数器rejected ,用来记录被拒绝的请求数;修复了VertxHttpExporter 类解析/v1/traces 端点有误的问题。要了解关于该版本的更多细节,请查看变更日志

类似的,Quarkus 3.2.5.Final也带来了一些值得注意的变化,其中包括:修复了当CsrfRequestResponseReactiveFilter类检查媒体类型时,跨站点请求伪造扩展中潜在的NullPointerException;禁用ReactiveMongodbPanacheResourceTest类中的testMoreRepositoryFunctionalities()方法;修复了一个在多个线程中调用 bean 的写锁定方法时发生死锁的问题,其中该方法调用了同一 bean 中的另一个写锁定方法。要了解关于这个版本的更多细节,请查看变更日志

最后,Quarkus 2.16.10.Final发布,将依赖项Snappy Java从版本 1.1.8.4 升级到版本 1.1.10.1。要了解关于该版本的更多细节,请查看变更日志

Micronaut

Micronaut 基金会发布Micronaut Framework 4.1.0 版本,带来了Micronaut Core 4.1.3和一些新特性,其中包括:Bean映射器自动创建一种类型与另一种类型的映射;新增一个 Introspection Builder,如果一个类型只能通过构造器模式来构造,则可以利用@Introspected注解的 builder 成员来生成一个动态构造器;针对使用Kotlin符号处理(KSP)构建 Micronaut 应用程序做了改进。要了解关于该版本的更多细节,请查看发布说明

Microaut Frameworkd 4.0.6(第6个维护版本)升级了以下模块:Micronaut for SpringMicronaut JAX-RSMicronaut ServletMicronaut ValidationMicronaut RedisMicronaut TracingMicronaut AWSMicronaut Kafka。要了解关于该版本的更多细节,请查看发布说明

WildFly

WildFly 29.0.1发布,带来了组件升级(从 Quickstarts 29.x 迁移到 BOMs and WildFly Server 29.0.1.Final)和一些值得注意的 Bug 修复,其中包括:新依赖项org.jboss.jts to jdk.jconsole 导致 WildFly 29.0.0 不能在 Eclipse Temurin 17.0.8 上启动的问题;将依赖项升级到Square Okio 3.4.0,以解决CVE-2023-3635漏洞(可能导致 Okio 客户端在通过GzipSource类处理精心制作的 GZIP 归档文件时发生拒绝服务);升级到 WildFly 29.0.0 后与 MicroProfile RestClient 和 Jakarta CDI 规范有关的问题。要了解关于该版本的更多细节,请查看发布说明

Hibernate

Hibernate ORM的 6.3.0 和 6.2.8 版本发布,带来了一些值得注意的变化,其中包括:初步支持 Jakarta EE 11 的Jakarta Persistence 3.2规范,包括明确了 HQL/JPQL 查询中的数值字面量类型;新的Hibernate 6入门指南Hibernate查询语言新语法和新特性指南;作为 JPA 静态元模型生成器的一部分,能够为命名查询生成 DAO 风格的方法;生成器可以处理任意方法,而且创建出的查找器方法与使用新注解@Find的查询方法类似。

Hibernate Reactive 2.0.5.Final发布,兼容 Hibernate ORM 6.2.8.Final 和 Vert.SQL driver 4.4.5。值得注意的变化包括:MutinyGenerator类中定义的generate()方法返回类型从Uni<Object>更改为Uni<?>;增加了针对@TimeZoneStorage注解的测试;新增ParametersProcessorTest类来修复OracleParametersPostgresParametersSQLServerParameters类处理参数时的转义问题。要了解关于该版本的更多细节,请查看发布说明

Eclipse 基金会

Eclipse GlassFish 7.0.8 是第8个维护版本。该版本初步支持 JDK 21,并优化了 CDI 扩展,减少了非必要的ProcessAnnotatedType接口处理程序调用。它还带来了一些值得注意的 Bug 修复,包括:RWLockDataStructureTest类中的一个 JDK 11 兼容性问题;多 jar 文件兼容性问题;管理员用户将密码改为空时的 Admin Console 行为。要了解关于该版本的更多细节,请查看发布说明

Eclipse Vert.x 4.4.5发布,带来了依赖项升级和一些值得注意的变化,其中包括:改进ForwardedParser类,支持未用方括号括起来的 IPV6 地址;在实现WebSocketBase接口时,将帧聚合器与帧处理程序解耦;修复了 HTTP/2 在超时时抛出HttpClosedException而不是TimeoutException的问题。要了解关于该版本的更多细节,请查看发布说明弃用及破坏性变更清单

Eclipse JKube 1.14.0发布(一个用于 Kubernetes 和 OpenShift 的 Java 工具和插件实用程序),带来了 Bug 修复、改进,并支持 Gradle 8、Helidon、Spring Boot Layered Jar和向 OCI 注册中心推送Helm chart。要了解关于该版本的更多细节,请查看发布说明

JReleaser

JReleaser 1.8.0 版本发布(一个简化项目发布的 Java 实用程序),提供了文档改进、依赖项升级和一些值得注意的变化,其中包括:为缺失的 announcer 创建默认模板;升级到最新的 SDKMan 端点;改进 GitHub 422 错误响应的错误处理。要了解关于该版本的更多细节,请查看发布说明

值得注意的是,SLSA(Supply Chain Levels for Software Artifacts)已经宣布与 JReleaser、Maven 和 Gradle 的贡献者合作发布SLSA 1.0。这验证了 GitHub Actions BYOB(Build Your Own Builder)框架的设计,并证明了它的灵活性。

OpenXava

OpenXava 7.1.5发布,带来了一些显著的变化,其中包括:新增CompositeFilter类,用于在 Tab.setFilter()中同时使用两个IFilter,也可作为 @Tab注解的IFilter;新增环境变量XAVA_CALENDAR_VIEWEVENT_ACTION,用于定义日历单击事件的动作;修复在 @Editor("ValidValuesRadioButton")中使用枚举时会在日志中产生IndexOutOfBoundsException异常的问题。要了解关于该版本的更多细节,请查看发布说明

 

原文链接:

https://www.infoq.com/news/2023/09/java-news-roundup-aug28-2023/


相关阅读:

Java 近期新闻:JDK 21 RC1、Apache Camel 4.0、Payara Platform、Apache Tomcat、Micronaut

Java ZGC 垃圾收集器全面增强


2023-09-12 08:003811

评论

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

阿里花500万年薪招天才黑客?官方回应:这种人得交给警察

程序员生活志

黑客 阿里

了不起的 Webpack Scope Hoisting 学习指南

Geek_z9ygea

Java 大前端 webpack

如何使用预测性指标衡量敏捷转型的成功?

Atlassian

敏捷开发 开发工具 Atlassian Jira

ARTS 04 - 使用 Gitlab + Generic Webhook Trigger 触发 Jenkins 自动化构建

jerry.mei

算法 ARTS 打卡计划 CI/CD 函数式编程 Elixir

万字详解加拿大央行CBDC分析报告

CECBC

架构师训练营第六周学习总结

CATTY

[译] 图说前端-图解 React

梦见君笑

大前端 React 框架

[译] 图说前端-组件、Prop 和 State

梦见君笑

大前端 React 漫画编程

JavaScript 混淆与逆向必读之 AST 节点类型名词基础

穿甲兵

Java

工程规约 - maven统一管理

Man

maven DevOps 工程规约

如何编写可怕的 Java 代码?

武培轩

Java 编程 程序员 后端

要不要做一个gif动态图玩一下?

诸葛小猿

GIF ScreenToGif 动态图

架构师训练营第六周作业

talen

架构师课程第六周 作业

杉松壁

关于架构的几件小事:架构概述(1)

北风

架构 架构设计 架构师 架构设计原则

架构师训练营第六周作业--doris临时失效时序图

CATTY

时序图

海南的七星彩网站系统盘口代码解析

网站,小程序,APP开发定制

代码

手把手整合SSM框架

JavaPub

架构师训练营第六周学习总结

张明森

U盘+grub2安装centos8实战

程序饲养员

如何在 Go 中写出高效的单元测试

Grafana 爱好者

testing slideshare Go 语言

创业使人成长系列 (3)- 如何取个好名字

石云升

创业 成长 取名

[译] 图说前端-图解 React Native

梦见君笑

大前端 漫画编程

大话设计模式 | 4. 装饰模式

Puran

C# 设计模式

AOP有几种实现方式?

八苦-瞿昙

技术 随笔杂谈 aop 代理 框架

使用 Generic Webhook Trigger 触发 Jenkins 多分支流水线自动化构建

jerry.mei

DevOps 持续集成 jenkins CI/CD 持续交付

vue项目发布时去除console语句

网站,小程序,APP开发定制

帮助小团队实现大梦想 | Atlassian 云产品免费使用

Atlassian

[译] 图解前端-深入理解 Props 和 State

梦见君笑

大前端 React 漫画编程

技术解读:单集群如何做到2万+规模

数据湖洞见

大数据 FusionInsight 华为云 大集群

java8的parallelStream提升数倍查询效率

网站,小程序,APP开发定制

java8

Java近期新闻:单查询加载、GraalVM、GlassFish、JReleaser、Quarkus、Micronaut_编程语言_Michael Redlich_InfoQ精选文章