0

我需要比较两个复杂的对象,例如:g

Policy{

 Private Vehicle-information info1;
 private Driver-information info2;
 ...
}

我有这个类的两个填充实例。我想比较这些实例,根据差异,我需要使用一些标志在用颜色标记的 UI 中显示它们。

比较这些对象的最佳方法是什么。我们可以使用它来实现它,XML因为java代码会很复杂。

4

2 回答 2

3

覆盖类中的equals()hashCode()方法Policy。然后您可以检查是否相等,例如:

if(object1.equals(object2)) { 
  // do something
}

如果您需要对对象进行排序,请实现Comparable并覆盖compareTo()方法。

于 2013-06-10T15:54:16.463 回答
0

一种解决方案:使用 Jackson 将您的对象序列化为 JSON,然后使用:它是 JSON Patch 的 Java 实现,它也可以在两个 JSON 之间生成差异作为 JSON 补丁。

这意味着您可以知道发生了什么变化以及发生在哪里。由于这是 JSON,因此您可以将结果发送到浏览器并由一些 JavaScript 代码轻松处理。与 XML 不同!

于 2013-06-10T16:14:56.570 回答