java pointer_Java EE 8 JSON Pointer讲解
Java EE 8包含JSON处理API的更新,并为最新的JSON标准提供最新的IEFT标准。他们是:
JSON Pointer (RFC 6901)
JSON Patch (RFC 6902)
JSON Merge Patch (RFC 7396)
入门
要开始使用JSON-P,您需要Maven中央存储库中的以下依赖项。
javax.json
javax.json-api
1.1
org.glassfish
javax.json
1.1
JSON-Pointer
JSON指针定义了一个字符串表达式,该表达式引用JSON文档的层次结构内的元素。通过JSON指针表达式,您可以通过检索,添加,删除和替换由表达式引用的元素或值来访问和操作JSON文档。
入口API是javax.json.JsonPointer接口。通过调用javax.json.Json 类上的静态工厂方法createPointer(String expression)并将其传递给指针表达式来创建实例。
检索一个值
如果下面给出了JSON文档,并且您想要检索title元素的值,则可以创建JSON指针表达式 /title。
{
"title": "Java EE: Only What's New",
"author": "Alex Theedom",
"chapters": [
"Chapter 1: Java EE 8 What’s New Overview",
"Chapter 2: Java API for JSON Binding 1.0 (JSR 367)",
"Chapter 3: Java EE Security API 1.0 (JSR 375)"
],
"released": true,
"pages": 300,
"sourceCode": {
"repositoryName": "Java-EE-8-Only-Whats-New",
"url": "github.com/readlearncode/"
},
"otherBooks": [
{
"title": "Professional Java EE Design Patterns",
"length": 350
}
]
}
JsonObject jsonObject = ... create JSONObject from JSON document ...;
下面的代码片段创建一个JsonPointer并引用title元素。然后它调用传递JsonObject来查询的getValue()方法。
JsonValue jsonValue = Json.createPointer(“/ title”)。getValue(jsonObject);
添加一个值
要向JSON文档添加(或插入)值,请遵循与检索相同的逻辑,方法是使用JSON指针表达式来标识文档中的插入点。以下代码片段将新的“category”:“Programming” JSON对象添加到文档的根目录。
JsonObject jsonObject = Json
.createPointer("/category")
.add(jsonObject, Json.createValue("Programming"));
返回的JsonObject是整个新的修改对象。
删除一个值
删除过程需要将删除的值的位置表示为JSON指针表达式。下面的代码片段删除title元素,并将修改的JSON文档作为JsonStructure实例返回
JsonStructure jsonStructure = Json.createPointer(“/ title”)。remove(jsonObject);
替换一个值
要替换要替换的元素的JSON指针表达式,并将替换元素传递给replace()方法。下面的代码片段替换title元素的值并返回修改后的JSON文档。
JsonStructure jsonStructure = Json
.createPointer("/title")
.replace(jsonObject, Json.createValue("Java EE 8"));
测试一个值
可以使用containsValue()方法测试某个位置存在的值。下面的代码片段测试以查看它在由JSON指针表达式/ doesNotExist表示的位置处有一个值。
Boolean containsValue = Json
.createPointer("/doesNotExist")
.containsValue(jsonObject);
总结结
上面这些,这就是关于JSON Processing新功能的第一篇文章。
java pointer_Java EE 8 JSON Pointer讲解相关推荐
- Java构造和解析Json数据的两种方法详解一
在www.json.org上公布了很多JAVA下的json构造和解析工具,其中org.json和json-lib比较简单,两者使用上差不多但还是有些区别.下面首先介绍用json-lib构造和解析Jso ...
- java解析json_JAVA解析JSON数据
在使用第三方api的使用,有时候会从网络中获得json数据,所以说我们将如何解析json数据? 下面小编将通过以下几点来进行json的讲解 JSON (JavaScript Object Notati ...
- java jsr_Java EE 7中包含哪些JSR?
java jsr 我开始填写所有应该包含在Java EE 7中的Java规范请求的表. 由于仍在决定平台版本,因此某些细节很难确定. 完整的Java EE 7 EJB产品具有以下标准组件和API: 名 ...
- 用JAVA正则表达式轻松替换JSON中大字段
用JAVA正则表达式轻松替换JSON中大字段 (一)背景 (二)正则表达式 (三)在JAVA代码中的实现 (四)合并正则表达式 (五)最终结果 (六)所感 (一)背景 在软件开发工作中我们经常用JSO ...
- JAVA SE 是什么? 入门级讲解。
JAVA SE 是什么? 入门级讲解. JAVA SE(Java Standard Edition,Java 标准版) java se是Java技术的核心和基础,是Java ME和Java EE编程的 ...
- java创建ee项目_项目头像–下一个Java EE功能?
java创建ee项目 又是一年中的这个时候. 圣诞节假期快到了,Java Advent Calender不断填满. 今天要写我的惊喜帖子. 我是Markus ,也称为@myfear , 多年来我一直在 ...
- java 嵌套对象转xml_Gson对Java嵌套对象和JSON字符串之间的转换 | 学步园
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,具有良好的跨平台特性.近几年来已经和XML一样成为C/S架构中广泛采用的数据格式.有关JSON的更多知识, ...
- JAVA中希尔排序去的讲解_java 中基本算法之希尔排序的实例详解
java 中基本算法之希尔排序的实例详解 希尔排序(Shell Sort)是插入排序的一种.也称缩小增量排序,是直接插入排序算法的一种更高效的改进版本.希尔排序是非稳定排序算法.该方法因DL.Shel ...
- java 如何对由json对象构成的数组形式的字符串进行遍历?
1.情景展示 现在已知字符串为: [{"name":"微微笑","img":"http://zos.alipayobjects.c ...
- MySQL 数据类型讲解 和Java中所对应的数据类型讲解
MySQL 数据类型讲解 和Java中所对应的数据类型讲解 Mysql数据类型分类 在Mysql中常用数据类型一共有四种字符串数据类型.日期/时间数据类型.数值数据类型以及二进制数据类型. 一.字符串 ...
最新文章
- 软件测试学习:软件测试的背景
- 不容错过的8个持续集成工具
- JVM学习笔记之-JVM性能监控-JVM监控及诊断工具-命令行方式
- c 语言绘图函数,c语言图形编程(三、绘图函数-)(C language graphics programming (three, drawing function -)).doc...
- oracle sequrnce_Oracle Sqlldr简单用法
- 阿里云服务器linux系统上安装git版本控制系统
- PowerDesigner物理模型生成Excel文件
- 注册表添加 右键功能
- iOS系统突然故障卡死怎么办?快速解决不求人
- 【数据结构与算法】详解什么是哈希表,并用代码手动实现一个哈希表
- 东芝Toshiba DP-2210 打印机驱动
- pencil替代产品哪个品牌更好?推荐平替pencil
- 发现一个识图比较厉害的网站
- UE官网ARPG游戏学习笔记1
- cloudflare解析域名+CDN
- handler原子锁_spring-boot-starter-current-limiting
- 试着在unity实现阴阳师抽卡效果
- Spider爬虫--手机App抓包爬虫
- 基于 Self-hosted Debug 的调试
- element-ui中tree组件双击事件的实现
热门文章
- solr自带智能拼音收藏
- XP系统访问网页无法下载php,window_WinXP因配额不足导致无法访问如何解决, WindowsXP系统虽然说是已经 - phpStudy...
- 面试一个应届生,从不起眼到令人刮目相看
- U盘装机大师安装GHOST WIN10系统
- python数字转英文_GitHub - Ailln/en2an: 快速转化「英文数字」和「阿拉伯数字」
- 零度飘逸LDPY GhostWin7 Sp1纯净选择版V7.0(驱动增强版)
- 自然语言处理系列四》新词发现与短语提取》新词发现
- 通过互联网进行远程桌面连接
- 请不要叫我小编,我是神圣的内容产品经理
- JScriptJQuery学习