package com.hzrc.apply.utils;
import org.springframework.util.ObjectUtils;
import java.lang.reflect.Field;
/**
* @author SJT
* @Description: 合并两个对象的值,将第一个对象不为空的值赋值到目标对象
* @date 2022-04-26 09:47
*/
public class MergeObjectsUtil {
//合并两个对象的值
public static <T> T mergeObjects(T sourceBean, T targetBean) {
Class sourceBeanClass = sourceBean.getClass();
Class targetBeanClass = targetBean.getClass();
Field[] sourceFields = sourceBeanClass.getDeclaredFields();
Field[] targetFields = targetBeanClass.getDeclaredFields();
for (int i = 0; i < sourceFields.length; i++) {
Field sourceField = sourceFields[i];
Field targetField = targetFields[i];
sourceField.setAccessible(true);
targetField.setAccessible(true);
Class<?> type = sourceField.getType();
try {
if (!ObjectUtils.isEmpty(sourceField.get(sourceBean))) {
targetField.set(targetBean, sourceField.get(sourceBean));
}
} catch (IllegalArgumentException | IllegalAccessException e) {
e.printStackTrace();
}
}
return targetBean;
}
}
知是行之始,行是知之成
对象合并工具类:复制非空属性
该博客介绍了一个Java工具类,用于合并两个对象的值。类`MergeObjectsUtil`实现了将源对象(sourceBean)中非空的属性值复制到目标对象(targetBean)中,适用于对象数据的合并场景。
3204

被折叠的 条评论
为什么被折叠?



