gpt4 book ai didi

java - 如何使用映射结构中的列表将列表映射到对象

转载 作者:行者123 更新时间:2023-12-01 17:51:18 26 4
gpt4 key购买 nike

如何使用 MapStruct 创建一个映射器,将列表(我的源)映射到具有列表(目标)的对象?

我的源类如下所示:

class SourceB {
private String name;
private String lastname;
}

class SourceA {
private Integer id;
private List<SourceB> bs;
}

所以我需要将其转换为:

class DestinationA {
private Integer id;
private DestinationAB bs;
}

class DestinationAB {
private List<DestinationB> b;
}

class DestinationB {
private String name;
private String lastname;
}

预期的示例 json:

来源:

{
"id": 1,
"bs": [
{
"name": "name1",
"lastname": "last1"
},
{
"name": "name2",
"lastname": "last2"
}
]
}

目的地:

{
"id": 1,
"bs": {
"b": [
{
"name": "name1",
"lastname": "last1"
},
{
"name": "name2",
"lastname": "last2"
}
]
}
}

最佳答案

这很简单。只需将带有指定 sourcedestination@Mapping 注解放在映射方法的顶部即可。

@Mapper
public interface SourceMapper {
@Mapping(source = "bs", target = "bs.b")
DestinationA sourceAToDestinationA(SourceA sourceA);
}

关于java - 如何使用映射结构中的列表将列表映射到对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60791325/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com