首页 > 解决方案 > 将 POJO 转换为 JSON 以进行对象比较?

问题描述

背景: API 用于更新/插入一些条目到数据库中。 当前逻辑: API/服务首先从数据库中获取已经存在的(如果有的话,对于客户端提供的参数的组合)记录/条目对象,然后检查客户端在请求中发送的某些预定义的客户端特定属性值是否对象已经存在于记录/条目对象中。如果是这样,它不会继续针对该特定场景进行更新数据库调用,否则进行更新调用。

问题:我们有多个客户端,每个客户端都希望检查请求对象的不同属性组合。

约束:

现在我们想概括一下这个属性比较,想明白以下几点:

class ClientContributedPojo {
 private List<DeeplyNestedClassA> attrA;
 private List<DeeplyNestedClassB> attrB;
 private List<DeeplyNestedClassC> attrC;
 private List<DeeplyNestedClassD> attrD;
}
class DataBaseRecord {
 private DeeplyNestedClassP attrP;
 private DeeplyNestedClassQ attrQ;
 private List<DeeplyNestedClassA> attrA;
 private List<DeeplyNestedClassD> attrD;
 private List<DeeplyNestedClassC> attrC;
}

现在客户希望通过以下方式比较值:

目前这种比较的逻辑与客户端的耦合过于紧密(每个客户端都需要不同的功能),我们想对其进行概括。

标签: javajsonpojo

解决方案


推荐阅读