JSON内容对比工具
一款基于Java的JSON内容对比工具类,结合Jackson一起使用
Maven依赖:
<dependency><groupId>com.flipkart.zjsonpatch</groupId><artifactId>zjsonpatch</artifactId><version>0.4.9</version></dependency>
生成JSON差异包使用方式:
JsonNode.asJson(JsonNode source, JsonNode target, EnumSet<DiffFlags> flags);
source【JsonNode 】
:json比较的基础对象target【JsonNode 】
:json比较的对比对象flags【DiffFlags】
:对比结果状态标识,可选值有4个OMIT_VALUE_ON_REMOVE
忽略删除的字段,默认值配置OMIT_MOVE_OPERATION
忽略移动操作,例如增加此配置时比较数组[a,b,c]与[c,b,a]时,对比结果为按照顺序严格模式进行比较,结果是delete 1,add 3。如果不增加该配置结果是remove a到第3个位置OMIT_COPY_OPERATION
忽略复制操作,例如增加此配置时比较数组[a,b,c]与[a,a,b,c]时,对比结果为按照顺序严格模式进行比较,结果是在第2个位置add a。如果不增加该配置结果是copy a到第2个位置ADD_ORIGINAL_VALUE_ON_REPLACE
比较结果中增加原始值EMIT_TEST_OPERATIONS
比较结果中增加测试信息
使用在源JSON数据上应用JSON差异包
(1) 该方法会产生一个新的JsonNode对象
JsonNode apply(JsonNode patch, JsonNode source, EnumSet<CompatibilityFlags> flags);
patch【JsonNode 】
:json差异包对象target【JsonNode 】
:json源对象flags【CompatibilityFlags】
:应用差异包标识MISSING_VALUES_AS_NULLS
忽略空对象REMOVE_NONE_EXISTING_ARRAY_ELEMENT
移除不存在的列表项ALLOW_MISSING_TARGET_OBJECT_ON_REPLACE
允许忽略当前对象中替换的对象
(2) 该方法不会产生一个新的JsonNode对象,而是直接修改原对象
JsonPatch.applyInPlace(JsonNode patch, JsonNode source, EnumSet<CompatibilityFlags> flags);
patch【JsonNode 】
:json差异包对象target【JsonNode 】
:json源对象flags【CompatibilityFlags】
:应用差异包标识MISSING_VALUES_AS_NULLS
忽略空对象REMOVE_NONE_EXISTING_ARRAY_ELEMENT
移除不存在的列表项ALLOW_MISSING_TARGET_OBJECT_ON_REPLACE
允许忽略当前对象中替换的对象
JSON内容对比工具相关推荐
- Winform,RichTextBox,Json文本对比工具
在工作中,有的时候需要做一些Json对比的需求,通过肉眼去找到不一样的地方 当然,现在有很多可以做对比的小工具,比如Beyond Compare 但是这个有个弊端,如果对比的时候是个Json字符串,没 ...
- 文字内容对比工具-BeyondCompare
1.下载路径,进入腾讯软件中心,下载即可: [Beyond Compare下载]2022年最新官方正式版Beyond Compare收费下载 - 腾讯软件中心官网 2.安装,安装完成后打开,把文件A拖 ...
- Json数据的对比工具,对比库(含js在线对比工具,.net 的jsondiffer包)
1)如果是偶尔手工对比两个值,可以借助json的在新对比工具: 在线地址: json在线对比工具 2)如果是.net 中对比两个json的差异. 建议使用:NuGet Gallery | JsonDi ...
- JSON数据的差异对比工具(Java版)
目录 背景 说明 源码 源码走读 其他 背景 之前有类似接口diff对比,数据对比的测试需求,涉及到json格式的数据对比,调研了几个大神们分享的代码,选了一个最符合自己需求的研究了下.(可惜原文链接 ...
- 在线JSON在线对比差异工具
在线JSON在线对比差异工具 在线JSON在线对比差异工具 JSON在线对比差异工具,JSON在线对比差异工具,JSON在线对比差异工具 https://tooltt.com/json-diff/
- mysql 连接差异_和你一起从 0 实现一个数据库差异对比工具
对比数据的痛苦 不知道你是否也像我一样,在快乐编写代码的时候,必须进行一些数据库的数据对比工作. 诚然,一般的数据差异,比如是每一行的内容不同,市场上有比较成熟的 compare2 等对比工具. 但是 ...
- Python 自动化办公之 Excel 对比工具
作者 | 周萝卜 来源丨萝卜大杂烩 今天我们继续分享真实的自动化办公案例,希望各位 Python 爱好者能够从中得到些许启发,在自己的工作生活中更多的应用 Python,使得工作事半功倍! 需求 由于 ...
- 【PC工具】更新win10关闭更新工具,接速度最快最好用的文件内容搜索工具:searchmyfiles...
微信关注 "DLGG创客DIY" 设为"星标",重磅干货,第一时间送达. 今天一个朋友向我咨询win10更新的关闭方法,主要是因为她的办公电脑经常提示更新,并且 ...
- Windows文件夹、文件源代码对比工具--WinMerge
/*********************************************************************** Windows文件夹.文件源代码对比工具--WinMe ...
最新文章
- pandas学习之Series结构
- IC/FPGA笔试/面试题分析(十一)基础概念(三态门等)
- 网站出现service unavailable的解决方法
- 阿里开源Mysql分布式中间件:Cobar
- iTOP-4412开发板驱动lcd显卡以及linux开机log的修改方法
- flex与java实现增删改查
- Shell-Scp自动输入密码
- Ionic系列——环境配置和项目搭建
- 魔兽争霸Ⅲ运行时不能初始化directX的错误解决
- 牛客网 第十七届中国计量大学程序设计竞赛(同步赛)(重现赛)B题	Broken Pad 暴力+思维
- 74-A/D指标,Accumulation/Distribution,积累/派发线,离散指标.(2015.7.1)
- squid代理服务器在企业网中的应用
- Java零基础学习之路(十三)Java super
- 超级计算机开采金矿,科学家发现地球内部有超60万亿吨金矿,为什么没人敢开采?...
- jquery $.fn $.fx原理
- 腾讯区块链+医疗,一场值得期待的卫生行业创新探索
- source ./ 和 . 的区别
- 基于STM32设计的宠物投喂器
- 10个空手套白狼案例:不花一分钱为自己赚大钱
- UOS系统中安装x11vnc远程桌面