...但我得到: 我不知道如何应用这些信息。首先,我认为我需要为列表声明一些额外的映射(在同一个映射器类中),所以MapStruct知道如何像这样映射列表类型的每个字段: ...但我收到错误消息
更准确地说,我甚至想要更详细的东西:目标应该是一个包含三个属性的类,其中产生的目标值必须被拆分为三个属性。例如,如果mysource.propa的值为“abc”,那么目标myTarget应该得到一个类似于“v01.123.456.ab”的值。该值依次分为preValue、middleValue和endvalue: preValue=“V01” middleValue=“123.456”
这个问题和这个问题完全相似。这个问题没有一个公认的答案,我已经尝试了这个问题中的所有建议,但它们都不起作用。我不想尝试这个答案,因为我觉得它违背了我使用不可变表的目的。@marc-von-renteln在这里的评论中很好地总结了这个原因 我尝试了@Tobias-Schulte提供的答案。但这引起了一个不同的问题。在答案中的Mapper类中,试图从映射方法返回Immutable*.builder时会
我们正在使用不可变框架来生成所有的DTO。现在我们想用MapStruct将这些对象映射到另一个对象。但是生成的DTO是不可变的,没有设置器和构造器,对应于构建器模式。它们只通过静态-方法访问的相应生成器来填充。 相反,我们尝试将DTO1映射到DTO2.Builder,如果mapstruct能够识别生成器中的setter,那么它就可以工作,但是它们没有void返回类型,而是返回生成器本身,以便进行流
我想把一个模型对象映射到dto模型。我已经有一个对象的映射器。我如何在另一个类中的另一个映射器中重用这个映射器? 我有下面的模型 这是我的地图 我希望将History映射到HistoryDynamo并重用IdentifierMapper映射HistoryDynamo中的一个对象。如何在ToHistoryDynamo中使用toIdentifierDynamo?
假设我有以下课程:
正如这里的示例所说(从上面的示例中采纳): 不打印生成的代码的样子: 其他类保持原样。
我目前正在面对mapstruct和它的初学者问题,其中一个是以下问题。 我知道示例方案:https://github.com/mapstruct/mapstruct-examples/tree/master/mapstruct-iterable-to-non-iterable 希望对象结构清晰。在源代码中有两个列表,应该为每个列表选择第一个元素。MapStruct如何做到这一点?
关于MapStruct的问题。我有这样的情况,我从基实体扩展类,但不知道如何映射它。这是我的箱子。 BaseEntity: 基础: 没有显示错误,在映射器实现(生成的代码)中没有该ID的映射:
我需要将源类中的字段值映射到字段属性。我可以使用Mapstruct使用@mapper注释的'expression'参数来完成 有没有其他方法可以不使用“表达式”来进行映射?
我有一个函数,使用CURL和谷歌地图应用编程接口返回地址的坐标。 代码如下: 代码对我和我使用它的99%的网络服务器都很好,但是对于大约1%的服务器,谷歌会返回错误消息: 我已经检查过了,googleapi键是正确的,PHP CURL已启用,PHP版本与它正在使用的PHP版本匹配。 有人能想到其他可能导致谷歌返回此消息的因素吗?
问题内容: 为什么接口不扩展接口?不是键值对的集合吗? 问题答案: 集合假定一个值的元素。映射假定键/值对的条目。他们本来可以重新使用相同的通用接口,但是它们实现的某些方法不兼容,例如 您可以将Map建模为条目的集合,这就是这样做的。 有一些共同的方法。,,,但这些都不太可能有多少价值作为一个独立的接口。(可以再次使用)
问题内容: 我的代码中有一个,如果地图的方法返回的是空列表而不是空值,则应避免使用空指针。java API中是否有类似的东西?我应该延长吗? 问题答案: @Jon的答案是直接处理您所要询问的好方法。 但是令我惊讶的是,您可能要实现的是“多图”;即从键到值集合的映射。如果是这种情况,那么您还应该查看Guava或Apache commons集合中的multimap类。 看着: 界面和它的实施方式中,或