如何告诉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

回到顶部