Java ModelMapper Map Date to String format字段

时间:2018-01-12 17:13:28

标签: java modelmapper

我有:

返回Date对象的

Object1.getData Object2.setData获取字符串并填充其字段。

我会在yyyy-MM-dd格式的String字段中将一个Data对象从src映射到Object2。

我的代码:

typeMap.addMappings(mapper -> {
    ...
    mapper.map(src -> src.getData(), (dest, v) -> dest.setDataInStringFormat(formatDateToString(v)));
    ...
});

public static String formatDateToString(Object v) {
    String dateFormat = "yyyy-MM-dd";
    if(v!=null)
        return new SimpleDateFormat(dateFormat).format(v).toString();
    else return "";
}

问题是v始终为空。

我做错了什么?

由于

1 个答案:

答案 0 :(得分:0)

为什么不尝试使用Converter

Converter<Date, String> formatDate = ctx -> ctx.getSource() != null
                ? formatDateToString(ctx.getSource())
                : "";
typeMap.addMappings(mapper -> mapper.using(formatDate).map(Object1::getData, Object2::setData));