如何实现beanutils.copyProperties不复制某些字段

问题:如何实现beanutils.copyproperties不复制某些字段?
 
描述:
beanutils.copyproperties不复制某些字段?
BeanUtils.copyProperties(information, informationData);
information里面的myclss不需要复制过去,那应该怎么操作呢?

解决方案1:
 

引用来自“孙亮”的评论

 
BeanUtils.copyProperties 方法里有忽略掉的属性。直接写在对应的位置就可以了啊。
例如:BeanUtils.copyProperties(product, pProduct, new String[] { "id", "createDate", "modifyDate" });
解决方案2:
 
BeanUtils.copyProperties 方法里有忽略掉的属性。直接写在对应的位置就可以了啊。
例如:BeanUtils.copyProperties(product, pProduct, new String[] { "id", "createDate", "modifyDate" });
解决方案3:
/**
 * 复制属性,过滤掉不复制的属性
 */
public static void copyBeanProperties(
    final Object source,//1,待复制的原始对象
    final Object target,//2,复制后的结果对象
    //3,获取保存你不需要复制的属性名
    final Collection excludes = new ArrayList();
    final PropertyDescriptor[] propertyDescriptors = BeanUtils.getPropertyDescriptors(source.getClass());
    for(final PropertyDescriptor propertyDescriptor : propertyDescriptors){
        String propName = propertyDescriptor.getName();
        if(!includes.contains(propName)){
            excludes.add(propName);
        }
    }
    //4,复制操作
    BeanUtils.copyProperties(source, target, excludes.toArray(new String[excludes.size()]));
}
 
本文网址链接:http://www.codes51.com/itwd/1168292.html

转载于:https://www.cnblogs.com/Thinkingcao/p/8797588.html

你可能感兴趣的:(如何实现beanutils.copyProperties不复制某些字段)