我使用commons-beanutils1.8.3和Date属性作为java.util.Date。
当我尝试将源复制到目标时,它无法复制日期属性。
下面是我之前的问题,但没有人给我正确的答案。
例如,我在源bean中的日期值是Wed May 15 15:46:04 IST 2013,但BeanUtils无法将其复制到目标...
发布于 2013-06-29 12:03:39
这是我能够解决这个问题的方法。
public static void copyProperties(Object src, Object dest) throws IllegalAccessException,
InvocationTargetException, NoSuchMethodException {
java.util.Date defaultValue = null;
Converter converter = new DateConverter(defaultValue);
BeanUtilsBean beanUtilsBean = BeanUtilsBean.getInstance();
beanUtilsBean.getConvertUtils().register(converter, java.util.Date.class);
BeanUtils.copyProperties(dest, src);
}发布于 2013-05-16 13:37:24
在您的示例中,不需要使用字符串转换,因为src和dest属性具有相同的类型。这将工作得很好。
for (Field property : attributes) {
property.set(dest, property.get(src));
}发布于 2015-06-09 19:14:59
用cloneBean函数解决了这个问题,比如:
ClassType newClazz = null;
newClazz = (ClassType) BeanUtils.cloneBean(oldClazz);https://stackoverflow.com/questions/16579518
复制相似问题