首页 > 解决方案 > Java 从对象字段构建嵌套 HashMap

问题描述

我是 Java 新手,遇到以下问题。

我有一个对象,我从中提取两个对象:MetaData 和 NestedObject。NestedObject 是“n”个对象的可迭代对象(我们称它们为内部对象)。每个 Inners 都是同一类的实例,因此它具有具有某些值的相同字段。

所以,假设 MetaData 有字段 getA()、getB()、getX(),每个字段都返回一些值 A、B、X。

类似地,Inners 有字段 getG(), getH(),..., getN() 以便这些方法返回

-> G1, H1, N1; for Inner1;
-> G2, H2, N2; for Inner2;
-> GN, HN, NN; for InnerN;

我想要创建的是一个 Collection,所以我有 HashMap ,这样:

{
"metadata": [A,B,X],
"inners": [[G1, H1,...N1], [G2, H2,...N2], ... [GN,HN,...,NN]]
}

我正在考虑创建某种 Pojo 类来提取字段值并构建 HashMaps,但我不确定要寻找什么方向。

你能帮我吗?

标签: javaparsingnested

解决方案


您可能想要创建一组 POJO,例如(没有 Map):

class MyObject {
    private Metadata metadata;
    private List<Inners> nestedObject;
// getters/setters
}

class Metadata {
    private String a;
    private int b;
// other fields, getters/setters
}

class Inners {
    private String g;
    private Date h;
    private int n;
// other fields, getters/setters
}

推荐阅读