前言
当后台日期为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就可以在项目中大展拳脚。