AICon 深圳站聚焦 Agent 技术、应用与生态,大咖分享实战干货 了解详情
写点什么

新 JSON 绑定库 JSON-B 发布公开预览版

  • 2016-06-23
  • 本文字数:958 字

    阅读完需:约 3 分钟

JSON-B 这个有望添加到 Java EE 8 的 JSON 绑定库发布了公开预览版。该库以 JSON Processing (不要同 JSONP 或 JSON-with-padding 混淆)为基础构建,旨在为诸如 Jackson Gson 这样的常见库提供一种标准的替代方案。不过,该 JSR 只针对 Java EE,也就是说,Java SE 的用户仍然需要使用第三方库。

为了提供一个 JSON 操作的 API,Java EE 7 于 2013 年引入了 JSON Processing 库。虽然 JSON-P 在操作和创建 JSON 对象时非常有用,但事实证明,它不足以满足开发人员的日常需求,他们需要一种更简单、更透明的方式,将一个普通的 Java 对象转换为 JSON,反之亦然。

JSON Processing 只是一个部分的解决方案,此外,它还比若干第三方工具出现得晚,其中包括 2008 年的 Gson 2009 年的 Jackson 。这些工具提供了多种集成机制来同其他 Java EE 组件,如 JAX-RS,交互,使得它们在 Web 开发中非常流行。然而,不同技术的传播让创建可移植的应用程序变得困难,标准化解决方案的需求日益凸显。这从 2014 年的 Java EE 8 社区调查就看出来了,投票结果显示,JSON 绑定工具成为 Java EE 新版本中优先级最高的特性。有鉴于此,针对 JSON-B 的 JSR 于那一年的 8 月被创建了出来,并计划在 2017 年上半年发布。

虽然社区对于这类功能有着强烈的需求,但该库面临的若干风险会妨碍它的应用。一方面,JSON Binding 可能出现的太晚了:当前在 2017 年发布的计划已经意味着比最初的计划延期了 6 个月,这也意味着, Java EE 8 本身也要延期 6 个月。不仅如此,对于这个行业来说,当前的时间表意味着 7 年的延期。

另一方面,Jackson 开发负责人 Tatu Saloranta 指出,基于 JSON Processing 限制了 JSON Binding 的应用范围和可扩展性。Saloranta 探讨了尝试基于 JSON-B 使用新标准重新实现 Jackson 的可能性,但几乎立刻就否定了这种可能性:

比如,这两点让实现 Jackson 或者基于 JSON-B 实现非常困难。除了全部的授权问题外,受限的范围和可扩展性意味着,Jackson 所做的许多工作,除了简单的 JSON 数据绑定外,将无法以一种兼容的方式提供。

这可能削弱了 JSON-B 所带来的好处,加重人们对于 Java EE 没有获得足够重视的担忧,就像 JCP 执行委员会最近一次会议所反映出来的那样,可能会导致 Java EE 的开发职责转移到社区。

查看英文原文 New JSON Binding Library Is Ready for Public Review

2016-06-23 19:003744
用户头像

发布了 1008 篇内容, 共 429.2 次阅读, 收获喜欢 346 次。

关注

评论

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

五大数据安全保障措施看这里!

行云管家

信息安全 数据安全 企业安全 数据库审计

4KMILES加入艾盛集团,加速中国品牌跨境业务的全域全效增长

极客天地

Go 事,Gopher 要学的数字类型,变量,常量,运算符 ,第2篇

梦想橡皮擦

Python 爬虫 8月月更

兆骑科创创服平台,招商引资,招才引智,投融资对接

兆骑科创凤阁

架构实战营模块九作业

Geek_Q

兆骑科创创新创业服务平台,海内外高层次人才引进,活动赛事

兆骑科创凤阁

EMAS Serverless系列~4步教你快速搭建小程序

hum建应用专家

Serverless #EMAS

INFINI 产品更新啦 20220815

极限实验室

elasticsearch infini gateway INFINI Labs 新版本/特性发布 INFINI Console

开源一夏 | 实战Node.js原理对于阻塞和EventEmitter及其继承的运用心得

恒山其若陋兮

开源 8月月更

出海浪潮下,Edgio引领CDN安全新风向!

科技热闻

架构实战营毕业总结

Geek_Q

大咖说·对话开源|企业如何用好开源数据库

大咖说

开源 企业数据库

数字先锋 | 海南省数据产品超市:让买数据产品像逛超市一样方便

天翼云开发者社区

数字化

网页制作常见问题网页的必要性与方法

Baklib

如何给玩偶建模并让它跳个舞?

HarmonyOS SDK

语音直播系统源码——解决应用瘦身问题

开源直播系统源码

软件开发 语聊房 语音直播系统 语音直播系统连麦

RT-Thread记录(九、RT-Thread 中断处理与阶段小结)

矜辰所致

RT-Thread 8月月更

C#/VB.NET: 改变Word中的字体颜色

Geek_249eec

C# word VB.NET 改变字体颜色

【Django | allauth】useprofile 用户模型扩展

计算机魔术师

8月月更

鄢贵海:DPU发展中的四个关键问题

硬科技星球

昇思MindSpore 1.8:丰富的算法集与套件,实现高性能训练,降低部署门槛

科技热闻

终究还是错付了!这2种Python字符串格式化的写法已经被淘汰了,你是不是还在用?

程序员晚枫

Python 字符串 格式化

2022BATJ1000道Java面试题解析,已有372人上岸(必看攻略)

程序知音

Java 程序员 java面试 后端技术 Java八股文

精益+敏捷,两大管理思路让研发效能「飞」起来

万事ONES

【Django | allauth】登录_注册_邮箱验证_密码邮箱重置

计算机魔术师

8月月更

一不小心晋级“CCF国际AIOps挑战赛”决赛?

天翼云开发者社区

【Django | allauth】重写allauth重置密码方法

计算机魔术师

8月月更

4KMILES加入艾盛集团,携手打造中国品牌在全球网络的增长机遇

极客天地

带你徒手完成基于MindSpore的CycleGAN实现

华为云开发者联盟

人工智能 mindspore 图像 生成网络

文档管理是企业进步必不可少的要素

Baklib

新JSON绑定库JSON-B发布公开预览版_Java_Abraham Marín Pérez_InfoQ精选文章