如何将两个 JsonNode 与 Jackson 进行比较?
How to compare two JsonNodes with Jackson?
我有一个比较两个对象的方法,但我不知道如何通过 Jackson 库比较 JsonNode。
我想要这样的东西:
private boolean test(JsonNode source) {
JsonNode test = compiler.process(file);
return test.equals(source);
}
这足以使用 JsonNode.equals:
Equality for node objects is defined as full (deep) value equality. This means that it is possible to compare complete JSON trees for equality by comparing equality of root nodes.
也许还添加一个空检查作为 test != null
您当前的代码看起来没问题,JsonNode
class 提供了 JsonNode.equals(Object)
检查方法:
Equality for node objects is defined as full (deep) value equality.
从 2.6 版开始还有使用自定义比较器的重载版本:
public boolean equals(Comparator<JsonNode> comparator, JsonNode other){
return comparator.compare(this, other) == 0;
}
我有一个比较两个对象的方法,但我不知道如何通过 Jackson 库比较 JsonNode。
我想要这样的东西:
private boolean test(JsonNode source) {
JsonNode test = compiler.process(file);
return test.equals(source);
}
这足以使用 JsonNode.equals:
Equality for node objects is defined as full (deep) value equality. This means that it is possible to compare complete JSON trees for equality by comparing equality of root nodes.
也许还添加一个空检查作为 test != null
您当前的代码看起来没问题,JsonNode
class 提供了 JsonNode.equals(Object)
检查方法:
Equality for node objects is defined as full (deep) value equality.
从 2.6 版开始还有使用自定义比较器的重载版本:
public boolean equals(Comparator<JsonNode> comparator, JsonNode other){
return comparator.compare(this, other) == 0;
}