大学城网站开发公司,做网站属于It行业吗,wordpress获取指定图片,如何做行业平台网站Java EE中的JSON-P简介 JSON处理1.0#xff08; JSR 353 #xff09;的Java API是一个低级#xff0c;轻量级的JSON解析器和生成器#xff0c;它提供了在属性和值级别上操作JSON数据的能力。 JSR 353提供了两种JSON处理模型#xff1a; 对象模型和流模型。 两种模型都可以… Java EE中的JSON-P简介 JSON处理1.0 JSR 353 的Java API是一个低级轻量级的JSON解析器和生成器它提供了在属性和值级别上操作JSON数据的能力。 JSR 353提供了两种JSON处理模型 对象模型和流模型。 两种模型都可以生成JSON数据并将其输出到流例如平面文件中并且两种模型都可以读取数据。 但是流模型在处理大量JSON数据时特别有效。 这允许实现数据导入功能以及即时转换此类数据。 但是流模型在处理大量JSON数据时特别有效。 这允许实现数据导入功能以及即时转换此类数据。 JSON-P对象模型 javax.json包提供了用于处理JSON数据的对象模型API。 它包括为JSON结构建模的类和用于JSON读取器和写入器的工厂。 Object模型将构成JSON数据结构的元素表示为对象。 例如JSON数组由javax.json.JsonArray类表示并且该类又实现List接口。 JSON对象由实现Map接口的javax.json.JsonObject类表示。 javax.json.Json类包含各种工厂方法这些方法可创建JsonGenerator JsonParser和JsonReader实例。 以下代码段从JSON文档创建JSONObject实例然后从其属性中检索数据。 1: private String json {\id\: 123456, \title\: \Fun with JSON-Processing\, \published\: true};2: JsonReader jsonReader Json.createReader(new StringReader(json));
3: JsonObject jsonObject jsonReader.readObject();
4: jsonReader.close();
5: jsonObject.getInt(id)
6: jsonObject.getString(title)
7: jsonObject.getBoolean(published) 第1行是我要处理的JSON文档。 我创建一个StringReader对象的实例并将其传递给JSON文档该文档通过createReader静态方法传递给JsonReader 。 我在第3行将JSON文档读入JsonObject实例并在第4行关闭阅读器。 现在有了JsonObject我可以通过将属性名称传递给getString方法来读取JSON属性的值。 此示例的代码存储在此文章随附的GitHub存储库中。 JSON-P流模型 javax.json.streaming包提供了解析和生成JSON数据的Streaming模型API。 它包括用于创建解析器和生成器的工厂。 它的实现方式完全不同而且级别较低。 从本质上讲 有两个主要的工厂来生成和解析JSON数据它们是JsonGeneratorFactory和JsonParserFactory 。 这些工厂面向写入和读取数据流。 通过链接将数据添加到缓冲区的方法然后通过调用flush或close方法将其刷新到输出流来完成JSON数据的写入。 JSON数据以流方式进行解析并且被设计为读取JSON数据的最有效方法。 解析器是从InputStream或Reader输入源创建的。 以下代码段通过使用JsonObjectBuilder上的构建器方法构造一个JSONObject实例然后从JsonObject检索数据。 1: JsonObject jsonObject Json.createObjectBuilder().add(id, 123456).add(title, Fun with JSON-Processing).add(published, true).build();2: jsonObject.getInt(id)
3: jsonObject.getString(title)
4: jsonObject.getBoolean(published) 在第1行上构造了JsonObject 。 如您所见它从Json类调用静态createObjectBuilder方法并且我为JsonObject拥有的多个属性调用add方法。 在这种情况下我需要三个属性idtitle和published。 最后一个方法是build方法该方法构造JsonObject 。 第2到4行在JsonObject的第1行上建立了getter方法并像上一个示例一样一一检索属性值。 此示例的代码存储在此文章随附的GitHub存储库中。 接下来是什么 如果您喜欢本文您将喜欢我为Lynde.com录制的新的Java EE JSON处理课程。 在本课程中我将深入研究整个API将其视为对象和流模型。 我使用了大量的代码示例并给您设置挑战以帮助您提高学习效率。 进一步阅读 我经常发布有关Java EE技术的文章因此您可能对以下内容感兴趣 上下文和依赖注入 CDI 企业Java Bean EJB JSPJSP和表达语言 RESTful Web服务 翻译自: https://www.javacodegeeks.com/2017/09/json-processing-json-p-api.html