如何告诉Dozer使用编程API绕过每个字段映射空值或空字符串值?
常见问题解答说明了如何使用XML进行此操作。这显示了如何使用API按类进行操作。问题是您必须在课堂上设置它。如果我只想在一个领域上怎么办?这可能吗?
回答:
为此,我可以创建自己的自定义转换器来实现所需的功能。这是代码:
import org.apache.commons.lang.StringUtils;import org.dozer.DozerConverter;
public class IfNotBlankConverter extends DozerConverter<String, String> {
public IfNotBlankConverter() {
super(String.class, String.class);
}
private String getObject(String source, String destination) {
if (StringUtils.isNotBlank(source)) {
return source;
} else {
return destination;
}
}
@Override
public String convertTo(String source, String destination) {
return getObject(source, destination);
}
@Override
public String convertFrom(String source, String destination) {
return getObject(source, destination);
}
}
第二个:
import org.dozer.DozerConverter;public class IfNotNullConverter extends DozerConverter<Object, Object> {
public IfNotNullConverter() {
super(Object.class, Object.class);
}
@Override
public Object convertTo(Object source, Object destination) {
return getObject(source, destination);
}
@Override
public Object convertFrom(Object source, Object destination) {
return getObject(source, destination);
}
private Object getObject(Object source, Object destination) {
if (source != null) {
return source;
} else {
return destination;
}
}
}
以上是 如何告诉Dozer使用编程API绕过每个字段映射空值或空字符串值? 的全部内容, 来源链接: utcz.com/qa/413950.html