2016-12-07 95 views
1

我使用库org.codehaus.jackson。我有2个JSON对象。我从文件hello.json读取的第一个对象。第二我自动生成。 第一:如何比较jackson库中两个JSON对象的结构(忽略值)?

{ 
    "name": "some value", 
    "date": 1480971600000 
} 

二:

{ 
    "name": "some value", 
    "date": 1480971600777 
} 

它们具有相同的结构,但"date"属性的不同值。我只想比较忽略值的这些对象的结构。我怎样才能做到这一点?

回答

1

如果您有一组固定的JSON格式,那么最简单的方法是创建JSON模式并使用它进行验证。例如:

JsonNode data = JsonLoader.fromString(jsonData); 
JsonNode schema = JsonLoader.fromString(jsonSchema); 

JsonSchemaFactory factory = JsonSchemaFactory.byDefault(); 
JsonValidator validator = factory.getValidator(); 

ProcessingReport report = validator.validate(schema, data); 
+0

什么是jsonData?什么是jsonSchema?请举个例子 – Simon