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

时间:2016-03-07 19:44:48

标签: java dto orika

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

1 个答案:

答案 0 :(得分:1)

是的,可以将源对象0 : [38, 38, 38, 38, 199, 199, 199, 199, 3004, 3004, 3004, 3004, 23, 23] 映射到目标类A - 然后Orika将自己实例化B - 或者已经创建的{{1}实例}}

B

在第二种情况下,您可以通过某种方式自行设置B实例--Orika只会将// 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); 中的属性映射到您在{{1}中定义的target }。