JSON

教程|JSON处理1.1:JSON指针挑战和应对

字号+ 作者:H5之家 来源:H5之家 2017-11-29 10:13 我要评论( )

从JSON-P 1.1 API中,直接得到的新JSON指针能做什么?本文将介绍一个挑战和相应的解释。

  【IT168 技术】从JSON-P 1.1 API中,直接得到的新JSON指针能做什么?本文将介绍一个挑战和相应的解释。

  在下图所示的代码片段中给出了JSON文档,使用JSON-P 1.1的JSON指针特性的结果是什么?

JSON处理1.1: JSON指针挑战和解决方案


  JSON对象的新形状如下图所示:

JSON处理1.1: JSON指针挑战和解决方案


  什么是JSON指针?

  JSON指针是JSON处理1.1 API中的一个新功能,并可以使用最新的IEFT标准JSON指针进行更新。这个更新的API是Java EE 8发行版本的一部分。

  那么JSON指针到底是个什么呢?一个JSON指针定义了一个字符串表达式,用它来标识JSON文档中的特定值。这与XPointer用于识别XML文档中的片段功能类似。

  JSON指针活动

  鉴于下图所示的JSON文档,类似数组中的第一个元素将通过JSON指针表达式来引用:/ likes / 0。

JSON处理1.1: JSON指针挑战和解决方案


  这里指的是元素值:Java。

  如何使用JSON指针

  入口API是JsonPointer接口。通过调用Json类的静态工厂方法createPointer()来创建一个实例。下面的代码片段创建了一个JsonPointer并引用了like数组中的第二个元素:

  JsonPointer pointer = Json.createPointer("/likes/0");

  JsonPointer API也可以通过添加、替换和删除属性来改变JSON文档。

  下面的代码片段将值“Java EE 8”添加到like列表中:

  pointer.add(jsonObject, Json.createValue("Java EE 8"));

  在下面代码片段中,替换了第三个索引位置处的值:

  pointer = Json.createPointer("/likes/2");

  JsonObject newJsonObject = pointer.replace(jsonObject, Json.createValue("Ice Cream"));

  把它们放在一起,就有了添加like数组的元素和替换的代码。完整的代码片段如下图所示:

JSON处理1.1: JSON指针挑战和解决方案


  代码片段的结果输出是:

JSON处理1.1: JSON指针挑战和解决方案


 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • Python的数据序列化「Json Pickle」

    Python的数据序列化「Json Pickle」

    2017-11-28 12:09

  • org.json.jar

    org.json.jar

    2017-11-27 17:03

  • PHP怎样对象转数组,Json转数组的方法

    PHP怎样对象转数组,Json转数组的方法

    2017-11-27 08:00

  • 简言之 Django Girls 教程

    简言之 Django Girls 教程

    2017-11-26 18:08

网友点评