使用BeanUtils.copyProperties,对两个实体类进行字段赋值,可以忽略一些不需要更新的字段

 private static String[] IGNORE_ISOLATOR_PROPERTIES = new String[]{"id", "creater", "createTime", "updater", "updateTime", "logicDel", "version", "registerOrgan", "registerOrganCode", "registerOrganId"};

 BeanUtils.copyProperties(sysEntity,sysEntity1,IGNORE_ISOLATOR_PROPERTIES);

可以忽略null值

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

        Set<String> emptyNames = new HashSet<String>();
        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);
    }

BeanUtils.copyProperties(source, target, getNullPropertyNames(source));
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐