嗨,我有如下的json结构#1和#2。我想要比较并捕获结果。
Json #1。
{
"menu": {
"id": "file",
"popup": {
"menuitem": {
"menuitem-1": "sometext",
"menuitem-2": {
"menuitem-2.1": "sometext",
"menuitem-2.2": "sometext",
"menuitem-2.3": {
"menuitem-2.3.1": "sometext"
}
}
}
},
"value": "File"
}
}Json #2
{
"menu": {
"id": "file",
"popup": {
"menuitem": {
"menuitem-2.3": {
"menuitem-2.3.1": "sometext"
}
"menuitem-1": "sometext",
"menuitem-2": {
"menuitem-2.1": "sometext",
"menuitem-2.2": "sometext"
},
}
},
"value": "File"
}
}我期望下面的JSON在JSON#2中被向上移动。我的目标是在JSON#2上识别任何创建新的/更新/调整/删除。
"menuitem-2.3": {
"menuitem-2.3.1": "sometext"
}有没有Spring / Java现有的框架可以实现上述目标?
发布于 2018-08-28 23:11:29
使用与org.apache.commons.lang.StringUtils的不同。比较两个字符串,并返回它们不同的部分。(更准确地说,返回第二个字符串的剩余部分,从它与第一个字符串不同的位置开始。)
例如,
difference("i am a machine", "i am a robot") -> "robot".
StringUtils.difference(null, null) = null
StringUtils.difference("", "") = ""
StringUtils.difference("", "abc") = "abc"
StringUtils.difference("abc", "") = ""
StringUtils.difference("abc", "abc") = ""
StringUtils.difference("ab", "abxyz") = "xyz"
StringUtils.difference("abcde", "abxyz") = "xyz"
StringUtils.difference("abcde", "xyz") = "xyz"参数: str1 -第一个字符串,可以为空str2 -第二个字符串,可以为空
发布于 2018-08-28 22:57:16
尝试使用Apache drill。它易于安装,并支持查询JSON。然后,您可以执行减号查询并获得差值。
您也可以使用java查询drill。Apache drill为此提供了JDBC驱动程序。
希望能有所帮助。:)
https://stackoverflow.com/questions/52060505
复制相似问题