我想在从bean映射到HashMap
期间排除某些字段。
Orika定义:
static {
final MapperFactory mapperFactory = new DefaultMapperFactory.Builder().build();
mapperFactory.classMap(MyReq.class, Map.class)
.exclude("myproperty")
.byDefault()
.register();
MAPPER = mapperFactory.getMapperFacade();
}
Bean定义:
public class MyReq {
private String myproperty;
}
用法:
MyReq req = new MyReq;
Map map = MAPPER.map(req, Map.class);
结果:Map
包含排除的myproperty
字段!为什么呢?
答案 0 :(得分:1)
我也遇到过这个问题,但只有Map
个实例(当你定义的类是目标对象时,它可以正常工作)。但是,有一种解决方法,因为Orika有多种方法来定义映射规则,如下所示:
mapperFactory.classMap(MyReq.class, Map.class)
.fieldMap("myproperty").exclude().add()
.byDefault()
.register();