gpt4 book ai didi

java - Orika 如何在不实例化新目标对象的情况下映射对象

转载 作者:行者123 更新时间:2023-11-30 07:32:46 24 4
gpt4 key购买 nike

我需要用 Orika 替换 Dozer 映射,并且我想知道是否可以在 Orika 中执行此 Dozer 操作 mapper.map(obj1, obj2)?到目前为止,我已经看到,对于目标,您只能指定类类型,而不能指定对象,因此我假设每次都会创建一个新实例。但在这种情况下,我只需要使用 DTO 的某些字段更新先前找到的实体对象。这可能吗?

最佳答案

是的,可以将源对象 A 映射到目标类 B - 然后 Orika 将自行实例化 B - 或者到已创建的 B 实例。

// Let Orika create instance of B
A source = new A();
BoundMapperFacade<A, B> mapper = mapperFactory.getMapperFacade(A.class, B.class);
B target = mapper.map(source);

// Create instance of B yourself and let Orika fill it
A source = new A();
B target = new B();
BoundMapperFacade<A, B> mapper = mapperFactory.getMapperFacade(A.class, B.class);
mapper.map(source, target);

在第二种情况下,您可以通过某种方式自行设置 target 实例 - Orika 只会将属性从 A 映射到 B您在 ClassMap 中定义的。

关于java - Orika 如何在不实例化新目标对象的情况下映射对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35852604/

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