写点什么

新 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:003491
用户头像

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

关注

评论

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

Qz学算法-数据结构篇(链表、栈)

浅辄

数据结构 链表 三周年连更

Gradle工程适配为Hvigor工程

坚果

OpenHarmony 三周年连更

缓解过拟合方法

linux大本营

leaflet加载聚合

linux大本营

算法题每日一练:组合总和 Ⅳ

知心宝贝

数据结构 算法 前端 后端 三周年连更

基于Java+Dubbo设计的智能公交查询系统

DS小龙哥

三周年连更

面试必考: 手撕代码系列(一)

沉浸式趣谈

JavaScript 手写代码 前端面试 手撕代码 超全前端面试题

delphi中TServerSocker使用stThreadBlocking模式的例子

linux大本营

linux tee命令

linux大本营

linux命令 TEE

SpringBoot之Tomcat与Undertow容器性能对比 | 超级详细,建议收藏

bug菌

tomcat 三周年连更 Undertow

【Python实战】XPath采集数据

BROKEN

三周年连更

AI大模型加速RPAxAI时代到来,谁会是RPA领域的杀手级应用?

王吉伟频道

RPA AI大模型 ChatGPT RPAxAI 企业级RPA

创建和管理复杂的项目:OmniPlan Pro 4 mac中文版

真大的脸盆

Mac Mac 软件 项目管理工具 项目流程软件

创新引领・数创未来 | 数据流通与治理专题论坛交流会顺利召开

郑州埃文科技

火山引擎云原生数据仓库ByteHouse技术白皮书V1.0 (Ⅴ)

字节跳动数据平台

数据仓库 云原生 白皮书 企业号 4 月 PK 榜

ChatGPT安全受质疑 网信办发布生成式人工智能服务管理办法意见稿

郑州埃文科技

winDbg 提示 Unable to verify checksum for IOCommModel.exe

linux大本营

网络安全 数字证书

Go 语言中的 Slice 陷阱:如何避免常见错误

陈明勇

Go golang 切片 三周年连更 切片陷阱

/sbin/kexec参数说明

linux大本营

Linux 镜像 Linux内核

强大的音频分析编辑工具:Amadeus Pro 汉化激活版

真大的脸盆

Mac Mac 软件 音频编辑 音频处理工具 编辑音频

【Linux】iptables之防火墙概述及规则匹配+实例(1)

A-刘晨阳

Linux iptables 防火墙规则 三周年连更

C++grpc 服务器接收到请求后如何处理

linux大本营

gRPC 序列化 protobuf C++

@PathVariable 和 @RequestParam 的区别

linux大本营

uniapp配置基本的tabbar和动态修改内容

格斗家不爱在外太空沉思

uni-app 三周年连更

想转行计算机但不知道转哪个方面比较好?

linux大本营

软件开发 计算机

跨平台应用开发进阶(五十三):uni-app 通过webview方式嵌套H5实现图片点击下载

No Silver Bullet

uni-app 跨平台应用开发 三周年连更 web-view

什么叫函数的注册,用c++举个例子

linux大本营

c++ 函数

领先企业的数智化进入2.0阶段,需要升级数智底座

用友BIP

arm m4 xpsr每一位的作用

linux大本营

寄存器 arm

koal_dm8_crypto.so.1.0.9.x86.b6f523 怎么安装

linux大本营

Linux linux文件

ES开发指南|如何快速上手ElasticSearch

浅羽技术

全文检索 搜索 Lucence Elastic Search 三周年连更

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