【发布时间】:2016-06-22 14:35:01
【问题描述】:
假设我有课程MySource:
public class MySource {
public String fieldA;
public String fieldB;
public MySource(String A, String B) {
this.fieldA = A;
this.fieldB = B;
}
}
我想把它翻译成对象MyTarget:
public class MyTarget {
public String fieldA;
public String fieldB;
}
使用默认的 ModelMapper 设置我可以通过以下方式实现它:
ModelMapper modelMapper = new ModelMapper();
MySource src = new MySource("A field", "B field");
MyTarget trg = modelMapper.map(src, MyTarget.class); //success! fields are copied
但是,MySource 对象可能是 null。在这种情况下,MyTarget 也将是 null:
ModelMapper modelMapper = new ModelMapper();
MySource src = null;
MyTarget trg = modelMapper.map(src, MyTarget.class); //trg = null
我想以这样的方式指定自定义映射,即(伪代码):
MySource src != null ? [perform default mapping] : [return new MyTarget()]
有人知道如何编写合适的转换器来实现这一点吗?
【问题讨论】:
标签: java modelmapper