简体   繁体   English

使用 Orika 使用 Date 和 Timestamp 映射对象

[英]Mapping objects with Date and Timestamp with Orika

I use Orika for mapping objects.我使用 Orika 来映射对象。

I want to format the fields Date and Timestamp with the format "yyyy-MM-dd'T'HH:mm:ss.SSSXXX"我想用格式“yyyy-MM-dd'T'HH:mm:ss.SSSXXX”格式化字段日期和时间戳

For the fields Date, I resolve the problem with:对于日期字段,我通过以下方式解决问题:

    @Override
public void configure(final MapperFactory orikaMapperFactory) {

    orikaMapperFactory.getConverterFactory().registerConverter(new DateToStringConverter("yyyy-MM-dd\'T\'HH:mm:ss.SSSXXX"));

    orikaMapperFactory.classMap(OrderDTO.class, Order.class).byDefault().register();
}

But the fields TimeStamp I don't know how to do it.但是TimeStamp字段我不知道该怎么做。

I resolve the problem with:我解决了这个问题:

public class OrikaTimestampConverter extends CustomConverter<Timestamp, String> {

private final SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSXXX");

@Override
public String convert(Timestamp source, Type<? extends String> destinationType, MappingContext mappingContext) {

    Date date = new Date(source.getTime());

    return formatter.format(date);
} }

And added:并补充说:

orikaMapperFactory.getConverterFactory().registerConverter(new OrikaTimestampConverter()); orikaMapperFactory.getConverterFactory().registerConverter(new OrikaTimestampConverter());

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM