DTO转VO时,将日期由DATE转String

前言

当后台日期为Date类型时,在进行前端显示时,如果不加以处理,通过会以时间戳的方式进行渲染,在此情况下,为了简化前端对日期数据繁琐的操作,在后端传值的时候,可直接将date转为string类型。

正文

本文主要介绍的是在DTO对象转为VO对象时,如何将DATE转化为String类型。
首先需要引入cglib的包
在复制对象时,我们可以引入转换器

public static void copyProperties(Object source, Object target, Converter converter) {
	BeanCopier beanCopier = BeanCopier.create(source.getClass(), target.getClass(), true);
	beanCopier.copy(source, target, converter);
}

其次,声明一个日期转换器,将Date类型转为String

public class DateConverter implements Converter {
    public Object convert(Object o, Class aClass, Object o1) {
        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        return format.format(date);
    }
}

这样,在COPY对象时,我们就可以直接使用此Converter了

ObjectUtils.copyProperties(dto,vo,new DateConverter());

总结

当然,此种方式可能在效率上不高,即需要对每一个属性进行类型判断,但确实可以大大提高我们开发的效率,直接通过此converter就可以在项目中大展拳脚。

发布了63 篇原创文章 · 获赞 29 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/Hpsyche/article/details/103430470