当前位置: 首页 > 知识库问答 >
问题:

Orika mapper-映射到列表

阳凌
2023-03-14

我有一个对象带有字段列表

形势图一班-

public class One {
    String field11;
    List<AnotherObject> field12;
}
public class AnotherObject {
    String field31;
    String field32;
}
public class Two {
    String field21;
    List<String> field22;
}
mapperFactory.classMap(One.class, Two.class)
    .fieldAToB("field11", "field21") //ok
    .fieldAToB("field12{field31}", "field22") //KO //because this is String (end element) --- > List<String>

真正的业务比示例要大得多,所以我排除了制作自定义映射器的可能性。


共有1个答案

梁明辉
2023-03-14

你必须像这样映射它:

mapperFactory.classMap(One.class, Two.class)
    .fieldAToB("field11", "field21") //ok
    .fieldAToB("field12{field31}", "field22{}") //ok

注意空括号{}

 类似资料:
  • 假设我有一个函数,它接受两个参数并返回一个值,那么可以将映射转换为流中的列表作为非终端操作吗?我能找到的最近的方法是使用地图上的forEach创建实例并将其添加到预定义列表中,然后从该列表中启动一个新流。还是我错过了什么? 经典的“在一长串单词中找出3个最常出现的单词” (现在我想流式处理该地图的入口集)

  • 的默认行为 mapper() 在映射的 Table 到映射的对象属性中,每个属性都根据列本身的名称命名(特别是 key 属性 Column )这种行为可以通过几种方式进行修改。 从属性名称清楚地命名列 默认情况下,映射与 Column 与映射属性的相同-具体来说,它与 Column.key 属性对 Column ,默认与 Column.name . 指定给映射到的python属性的名称 Colum

  • 我有一个实体,看起来像这样: 输入数据是一个

  • 我有一个问题与转换列表对象映射字符串,列表对象。我正在寻找与一个关键名称的汽车所有组件的地图,一个值由汽车与此组件表示 我写了一个解决方案,但寻找一个更好的流解决方案。

  • 如何将字符串映射到列表,并将列表映射到字符串? 考虑到我们有以下班级 在Dozer和Orika中,我们可以使用以下代码行轻松映射 如何在MapStruct中进行相同类型的映射?在哪里可以找到有关mapstruct的更多示例?

  • 下面是我的DTO。 源DTO 目标DTO