将平面结构转换为 Java 类层次结构

时间:2021-05-06 16:00:12

标签: java serialization deserialization

我正在尝试将平面 dict 反序列化为 Java 类。我的直觉说有一个工具可以做这种事情,但还没有找到。

AB 是 Java 类。它们被定义为

Class A {
    String m1;
    String m2;
    Collection<B>;
}

Class B {
    String m1;
    String m2;
}

扁平的 dict 结构(我从 3rd 方系统获得)看起来像:

[
    {
        A.m1: "1",
        A.m2: "2",
        A.B.m1: "3",
        A.B.m2: "4"
    },
    {
        A.m1: "1",
        A.m2: "2",
        A.B.m1: "5",
        A.B.m2: "6"
    },
    {
        A.m1: "8",
        A.m2: "9",
        A.B.m1: "10",
        A.B.m2: "11"
    },
    {
        A.m1: "8",
        A.m2: "9",
        A.B.m1: "12",
        A.B.m2: "13"
    }
    ...
]

在 flat dict 中,A.m1: "1"A.m2: "2" 对前两个对象很常见。而 A.m1: "8"A.m2: "9" 是最后两个常用的。

给出上面的结构和类定义我想让我的Java类层次结构看起来像:(我用json格式表示它以便更好地理解)

A: {
    m1: "1",
    m2: "2",
    B: [
        {
            m1: "1",
            m2: "2"
        },
        {
            m1: "3",
            m2: "4"
        }
    ]
},
A: {
    m1: "8",
    m2: "9",
    B: [
        {
            m1: "10",
            m2: "11"
        },
        {
            m1: "12",
            m2: "13"
        }
    ]
}

有谁知道进行这种转换的工具?或者我需要实现这个吗?

0 个答案:

没有答案