从复杂的笛卡尔SQL查询创建简单对象

时间:2019-04-04 09:05:06

标签: java spring

我的数据库查询结果是:

a  | b  | c  | d
a1 | a2 | b1 | b2
a1 | a2 | b3 | b4
a1 | a2 | b5 | b6

a,b,c,d-列名

如您所见,由于笛卡尔积,值a1,a2是可重复的。

我上课:

class X {
    String a;
    String b;
    List<Y> rest;
}

class Y {
    String c;
    String d;
}

我要创建对象:

{
    a: a1
    b: a2
    rest: [
    {
       c: b1,
       d: b2
    }, 
    {
       c: b3,
       d: b4
    }, 
    {
       c: b5,
       d: b6
    }, 
    ]
}

出于可读性考虑,我将其写为json。

我可以将结果从数据库转换为列表>,其中Map键是列名,值=单元格值。

但是如何将List转换为我的类X,Y的结构。

请注意,在我的最终对象中,我没有重复查询中的A和B列。

0 个答案:

没有答案