资讯专栏INFORMATION COLUMN

Java BeanUtils对象复制工具类及方法

Kerr1Gan / 481人阅读

1. BeanUtils.copyProperties(Object source, Object target)

用法: 讲source的属性值复制到target,属性为null时也会进行复制。

需求:排除null值进行复制
public class CopyObjectUtil {


    public static String[] getNullPropertyNames(Object source) {
        final BeanWrapper src = new BeanWrapperImpl(source);
        java.beans.PropertyDescriptor[] pds = src.getPropertyDescriptors();

        Set emptyNames = new HashSet();
        for (java.beans.PropertyDescriptor pd : pds) {
            Object srcValue = src.getPropertyValue(pd.getName());
            if (srcValue == null) emptyNames.add(pd.getName());
        }
        String[] result = new String[emptyNames.size()];
        return emptyNames.toArray(result);
    }

    public static void copyPropertiesIgnoreNull(Object src, Object target) {
        BeanUtils.copyProperties(src, target, getNullPropertyNames(src));
    }


}

使用方式与BeanUtils.copyProperties相同:

CopyObjectUtil.copyPropertiesIgnoreNull(Object source, Object target);

2. BeanUtils.copyProperties(Object source, Object target, new String[] { "id", "createDate", "modifyDate" })

用法:排除指定字段进行复制

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/72704.html

相关文章

  • BeanUtils工具使用细节

    摘要:拷贝操作又一个非常好用的工具类和中分别存在一个,提供了对。除了支持基本类型以及基本类型的数组之外,还支持这些类的对象,其余一概不支持。而且,由于这些类都是采用反射机制实现的,对程序的效率也会有影响。因此,慎用或者使用看效果如何 java bean拷贝操作又一个非常好用的工具类 BeanUitls :spring (org.springframework.beans.BeanUtils)...

    afishhhhh 评论0 收藏0
  • 排名前16的Java工具

    摘要:在中,工具类定义了一组公共方法,这篇文章将介绍中使用最频繁及最通用的工具类。另外,工具类,根据阿里开发手册,包名如果要使用不能带,工具类命名为 在Java中,工具类定义了一组公共方法,这篇文章将介绍Java中使用最频繁及最通用的Java工具类。以下工具类、方法按使用流行度排名,参考数据来源于Github上随机选取的5万个开源项目源码。 一. org.apache.commons.io....

    android_c 评论0 收藏0
  • 干货:排名前16的Java工具

    摘要:在中,工具类定义了一组公共方法,这篇文章将介绍中使用最频繁及最通用的工具类。另外,工具类,根据阿里开发手册,包名如果要使用不能带,工具类命名为。 showImg(https://segmentfault.com/img/remote/1460000015356958); 在Java中,工具类定义了一组公共方法,这篇文章将介绍Java中使用最频繁及最通用的Java工具类。以下工具类、方法...

    nanchen2251 评论0 收藏0
  • java十六大常用工具

    摘要:一关闭一个流或者且不抛出异常。删除文件或文件夹且不会抛出异常。此外,还支持等十格式化参数,返回一个或者可用字符串把或者等转换为十一加密,返回位加密加密加密加密,返回位十二是否为空根据条件筛选集合元素根据指定方法处理集合元素,类似的。 一. org.apache.commons.io.IOUtils closeQuietly 关闭一个IO流、socket、或者selector且不...

    joyqi 评论0 收藏0
  • Apache Commons工具

    摘要:但是集合框架专门有一个工具包对它们进行了扩展。是为了方便对的操作的工具包。如下实例你好你好是用于处理文件上传的工具包。 commons-lang  commons-lang为java核心类提供额外的方法。比如为Date类型提供addDays(),addHours操作,为String类提供isBlank(),isEmpty()操作。但是java集合框架专门有一个工具包commons-co...

    wangshijun 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<