mapstruct:替换源

时间:2019-01-03 12:08:37

标签: java mapstruct

我看到了许多Mapper或@BeforeMapping的示例,这些示例将修改源对象。

我想在映射之前替换源对象,而不是修改源。这可能吗?

通过示例,我将返回一个增强类(CGlib),该类将以我想要的方式对待属性。

想法:

我正在使用MapStruct将@Entity转换为DTO。我想要一个较小的有效载荷。 现在,当有效负载中不需要这些字段时,根据我的“ mappingContext”将字段设置为null。

我想尽可能不要在@Entity对象中设置字段值,因为如果对象仍附加到session / EntityManager上,这可能导致数据库更改。 (或者将它们重新合并到db)。

我也不想使用“ em.detach”,因为这意味着我的映射器在映射之前或之后与代码“魔术地结合”了。

0 个答案:

没有答案