QCon北京「鸿蒙专场」火热来袭!即刻报名,与创新同行~ 了解详情
写点什么

Java 近期新闻:Micronaut,Quarkus,JDK 18,Spring HATEOAS 和 JKDMon

  • 2021-12-03
  • 本文字数:1738 字

    阅读完需:约 6 分钟

Java近期新闻:Micronaut,Quarkus,JDK 18,Spring HATEOAS和JKDMon

对于 Java 业界动态汇编,本周(2021 年 11 月 22 日版)是相对平静的一周。关注焦点是 OpenJDK JEP、JDK 18、织机项目(Project Loom)Build 18-loom+6-282、Spring HATEOAS 1.4、Micronaut 3.2、Quarkus 2.5.0、 Apache Camel Quarkus 2.5.0 和 JDKMon 17.0.14。

OpenJDK

JEP 419,即外部语言交互(Foreign Function)和Memory API(第二轮孵化),已结束审查,在 JDK 18 中的状态从“Proposed to Target提升到Targeted”。JEP 419 是直接从 JDK 17 中交付的 JEP 412 演化而来,即外部语言交互和Memory API(第一轮孵化),是对 Java 社区反馈的进一步改进。第二轮孵化中的改进涉及:支持更丰富的内存访问变量句柄承载器(carrier),例如booleanMemoryAddress接口;为MemoryAddressMemorySegment接口提供更通用的解引用(dereference)API;简化了获取向下调用(downcall)方法句柄的 API,无需传递MemoryType枚举类型;新提供了从内存段拷入拷出 Java 数组的 API。


此外,JDK 18 中 JEP 420(即switch中的模式匹配(第二版预览))的状态同样从“Proposed to Target提升到Targeted”。JEP 420 是 JDK 17 交付的 JEP 406(switch中的模式匹配(第一版预览)的第二版预览,支持switch表达式验证多组模式,可根据数据精准地表达复杂的查询,进而采取对应的行动。JEP 420 中的改进涉及:对支配性检查(dominance checking)的改进,强制常量标签case的出现先于同类型保护性模式(guarded pattern);使用密封(sealed)层级实现更精准的switch语句块有尽性(exhaustiveness)检查


Oracle Java 语言架构师Brian Goetz曾在 2017 年 9 月对此接受过InfoQ专访,此时模式匹配尚处概念原型(PoC)阶段。而操作符instanceof的模式匹配功能,实现在JDK 16交付的JEP 394中。

JDK 18

JDK 18先期访问构建版(early-access builds)针对 Build 24 中的多个问题做了关键更新,并于上周公开提供Build 25。具体细节,可参见“发行说明”。


下面列出了JDK 18当前的特性集:


鼓励开发人员通过Java Bug Database上报软件缺陷。

织机项目(Project Loom)

织机项目先期访问构建版已向 Java 社区公开提供了 Build 18-loom+6-282,该版本基于 JDK 18 先期访问构建版的Build 24

Spring 框架

Spring HATEOAS 1.4 于上周发布,这是 Spring 团队过去数周持续努力中可圈可点的工作。其中的新特性包括:支持 level 4 URI 模板;支持非组合请求参数(RequestParameter)渲染;改进了对HAL-FORMS媒体类型的支持;支持更丰富的 HTML 输入类型;对 Spring Framework 5.3.13 和 Jackson 2.13.9 的依赖升级。更多细节,参见“变更日志”。

Micronaut

Micronaut基金会已发布 Micronaut 3.2,主要特性包括对 GraalVM 21.3.0、Gradle Plugin 3.0.0、Kotlin 1.6.0 和一众 HTTP 特性的支持,以及对Micronaut DataMicronaut SecurityMicronaut KubernetesMicronaut Elasticsearch等部分自身模块等升级。更多细节,参见官方文档

Quarkus

Red Hat 已发布 Quarkus 2.5.0.Final,其中特性包括:对Mandrel 21.3依赖的升级;GraalVM社区版的下游衍生版;支持原生模式的 JPA EntityListeners for Hibernate ORM;使用quarkus.http.header属性将HTTP头部添加到服务器响应中;对 Quarkus扩展、开发模式和测试框架在可用性上的改进。

Apache Camel

为与Quarkus保持一致,Camel Quarkus 2.5.0 版发布了 Quarkus 2.5.0.Final 版的 Apache Camel 3.13.0 平台,在测试覆盖和文档上做了一定改进。更多细节,参见“问题列表”。

JDKMon

JDKMon最新版17.0.14已向 Java 社区公开提供。JDKMon 是一款对已安装 JDK 进行监控和更新的新工具,由 Azul 首席工程师Gerrit Grunwald创建。新版交付的特性包括:在搜索路径中自动添加由 SDKMAN!代理的JDK发行版以及所有相关 Java 目录;对任何可用更新给出说明发行细节的链接。


原文链接:

 Java News Roundup: Micronaut 3.2, Quarkus 2.5, JDK 18, Spring HATEOAS 1.4, JKDMon 17.0.14

2021-12-03 14:212720

评论

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

Three.js杂记(四)—— 更好的运动:TweenMax

空城机

大前端 3D渲染 3D可视化 three. webg

go训练营毕业总结

伊灵

js逐步教你实现原生古诗匹配系统(html逻辑 css逻辑 js逻辑)

js

从一道美团春招笔试题目出发,揭开树DP的神秘面纱

面鲸

面试 数据结构与算法 笔试题

前置机器学习(四):一文掌握Pandas用法

caiyongji

机器学习

Prophecis 0.2.0 版本发布

WeDataSphere

机器学习 大数据 学习 WeDataSphere

第九周作业

yoki

工程方法事例实战

风翱

软件工程 3月日更

Three.js杂记(八)—— 文本几何体

空城机

大前端 WebGL 3D渲染 3D可视化 three.js

[Thinkphp6.0 零基础到前后分离实战]一

重庆柯一网络有限公司

全球视野下的云上“夺旗赛”:京东云飞驰在产业赛道

脑极体

js逐步教实现表单系统(html逻辑 css逻辑 js逻辑)

源码分析Netty:核心组件及启动过程分析

程序员架构进阶

架构 Netty 源码剖析 28天写作 3月日更

网页长截图如此简单

Python研究所

浏览器 实用技巧 截图

高阶文件操作

Python研究所

Python 文件处理

js逐步教实现音乐系统(html逻辑 css逻辑 js逻辑)

js

JS逐步教你做(自己版本)的视频播放器(html逻辑 css逻辑 js逻辑)

js

js逐步实现原生控制系统(html逻辑 css逻辑 js逻辑)

js

js逐步实现原生flex系统(html逻辑 css逻辑 js逻辑)

js

h5逐步实现 <<canvas系统>>(html逻辑 css逻辑 js逻辑)

js

Three.js杂记(七)—— 全景效果制作·上(含python爬虫偷碎图,canvas重组图片)

空城机

大前端 WebGL 3D渲染 3D可视化 three.js

如何利用VGG19实现insightface人脸识别?

程序媛观澜

机器学习 人脸识别

机器学习(一):5分钟理解机器学习并上手实践

caiyongji

机器学习

Three.js杂记(六)——3D模型

空城机

大前端 WebGL 3D模型 3D可视化 three.js

前置机器学习(三):30分钟掌握常用NumPy用法

caiyongji

机器学习

Python-计算机视觉-OpenCV-Image

Aldeo

Python OpenCV 计算机视觉

js逐步教你实现原生电影院系统(html逻辑 css逻辑 js逻辑)

js

Three.js杂记(五)——坐标轴、光源

空城机

大前端 WebGL 3D渲染 3D可视化 three.js

前置机器学习(五):30分钟掌握常用Matplotlib用法

caiyongji

机器学习

我提升开发效率的经验

流沙

程序员 成长笔记 成长与思考

C语言性能优化:移除循环体中的重复运算

1

缓存 编程 程序员 性能优化 C语言

Java近期新闻:Micronaut,Quarkus,JDK 18,Spring HATEOAS和JKDMon_语言 & 开发_Michael Redlich_InfoQ精选文章