我有一个 POJO 'A',其中有超过30个变量。我有另一个 POJO 'B',大多数变量与 'A' 相同。
例如,A 有一个名为 var1 的变量,类型为 LocalDate 列表,而 B 有一个同名变量 var1,但类型为 Long 列表(日期的 long 值)。现在,我从 REST 服务中获取了'B'的响应,而我的老客户仍在使用'A'。我想将响应从B转换为A。由于除了变量 var1 之外的所有其他值都相同,最有效的方法是什么?是否有任何库提供这样的方法?
我有一个 POJO 'A',其中有超过30个变量。我有另一个 POJO 'B',大多数变量与 'A' 相同。
例如,A 有一个名为 var1 的变量,类型为 LocalDate 列表,而 B 有一个同名变量 var1,但类型为 Long 列表(日期的 long 值)。现在,我从 REST 服务中获取了'B'的响应,而我的老客户仍在使用'A'。我想将响应从B转换为A。由于除了变量 var1 之外的所有其他值都相同,最有效的方法是什么?是否有任何库提供这样的方法?
B objB = Json.deserialize(JSON.serialize(objA), new TypeReference<B>(){});
Gson
完成。Gson gson = new Gson();
Type type = new TypeToken<YourPOJOClass>(){}.getType();
String data = gson.toJson(workingPOJO);
coppiedPOJO = gson.fromJson(data, type);