java 拷贝非空对象属性值

来源:互联网 发布:淘宝收到货后申请退款 编辑:程序博客网 时间:2024/05/16 17:45

java 复制非空对象属性值:

public static void main(String[] args){User u1 = new User();u1.setName("AAA");u2.setArea("中国东莞");User u2 = new User();u2.setName("BB");BeanUtils.copyProperties(u2, u1,getNullPropertyNames(u2));}/** * @Title: getNullPropertyNames* @Description: 获取值为空的属性名称* @createdBy:byrc*/public static String[] getNullPropertyNames(Object source) {  BeanWrapper src = new BeanWrapperImpl(source);  PropertyDescriptor[] pds = src.getPropertyDescriptors();  Set<String> emptyNames = new HashSet<String>();  for (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);  }


原创粉丝点击