Java 如何在Orika bean mapper中排除字段?
我想在从bean映射到Java 如何在Orika bean mapper中排除字段?,java,orika,Java,Orika,我想在从bean映射到HashMap的过程中排除一些字段 Orika定义: static { final MapperFactory mapperFactory = new DefaultMapperFactory.Builder().build(); mapperFactory.classMap(MyReq.class, Map.class) .exclude("myproperty") .byDe
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
字段!为什么?我也遇到了这个问题,但仅限于Map
实例(当您定义的类是目标对象时,它工作正常)。但是,有一个解决方法,因为Orika有多种方法来定义映射规则,如下所示:
mapperFactory.classMap(MyReq.class, Map.class)
.fieldMap("myproperty").exclude().add()
.byDefault()
.register();