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

使用ModelMapper、Orika或Dozer等bean映射器映射验证属性路径

冯茂实
2023-03-14

假设bean映射器用于将业务Modell映射到DTO模型,反之亦然:哪一个提供了转换属性路径的简单方法?

根据这份优秀的bean映射器列表,并在他们的网站上进一步阅读,如果发现ModelMapper和Orika看起来很有吸引力。

共有1个答案

吕森
2023-03-14

ModelMapper似乎提供了访问这些信息的好方法。根据配置,特别是MatchingStrategy,ModelMapper将自动将值从源路径转换为目标路径,只要它们匹配。

要访问这些信息,可以使用modelmapper.gettypemaptypemap.getmappings

 类似资料:
  • 这很好,Orika自动确定bean上的属性名,并在expr中给我。但它没有告诉我类型。它也没有告诉我我试图映射到什么。在本例中,我只需假设目标是ResultSet。 如何知道要将数据放入的expr的类型?如果是,我将进行内联绑定调用,并告诉Orika使用。如果是时间戳,我将进行内联绑定调用并告诉Orika使用 我如何知道我试图从映射到,而不是从映射到?

  • 鉴于 和 如何在Orika中映射以下内容? 我需要定制的映射器或过滤器吗?

  • 我目前正在尝试使用ModelMapper的映射方法执行实体到DTO的映射。在最深的属性映射上,映射结果为null,但它应该是一个对象。 以下是我的映射源实体(省略brevety的Loombok getter和setter): 以下是我的目标DTO(省略brevety的Loombok Getter和Setter): 在我的Controller类方法上,我这样做映射: My clientService

  • 这些类映射不能用于双向映射。所以,我使用了两个不同的映射。但是使用两个不同的具有双向映射的类映射使上述方法都不起作用。我正在寻找一种方法来使用一个classmap只用于单向映射,这样我就可以使用上面的两个。 任何帮助都将不胜感激。谢了。

  • 我已经定义了对象HomeContentDTO和SubscriberUpsertDTO的映射 下面是这两个对象的映射配置 HomeContentDTO中的所有映射值都没有复制到SubscriberUpsertDTO。有人知道原因吗?

  • 我与ModelMapper框架有麻烦。请解释为什么我看到以下行为。 我在build.gradle有以下依赖性 和一个类客户: 我还有一个地图绘制工具: 还有一个测试 在fred()中,方法输出是非红色的“Customer{name=fred,age=40}”(“Customer{name=null,age=40}”)。你能解释一下为什么吗?为什么我在第一个方法中看不到输出“George”?