如何在java中比较/比较两个对象



我有两个对象,一个对象A来自现有生产,另一个对象B来自我们的新管道。最终它们都将被序列化为JOSN。现在,我想比较这两个管道是否生成相同的结果,这意味着这两个对象/JSON 是否携带相同的数据集。

请注意,同样意味着,它们具有相同的模式,并携带相同的数据集。例如

对象 A 具有

{"person" : [{"name": "alice"}, {"name": "bob"}, {"name" : "mike"}]}, 

对象 B 具有

{"person" : [{"name": "bob"}, {"name": "alice"}, {"name" : "mike"}]}. 

如果您运行 JSONDiss 某些东西,这将导致差异,但就我而言,即使键/值对的序列不同,它们也应被视为相同。 对象/JSON 的结构可能更复杂,但想法是,在每个袋子包中,它们应该包含相同的数据集。

就我而言,目标不仅仅是找到它们是否"相同",而是找到有什么区别? 例如,对象 3 有一个名为"name"的键/值对:"Tom",对象 1 没有。 我总是只需要比较两个对象。

我想知道是否有任何现有的库可以做到这一点? 或者有任何建议可以这样做吗?

我知道这有点旧了...(看到这个之后)

这是一个应该有效的答案:将JSON与嵌套数组和json进行比较(数组顺序无关紧要)

最新更新