CombineBeansUtil:方法是用于相同对象不同属性值的合并

今天碰到了两个Bean合并的案例。这里保留一份找来的工具类,修改了下。
注意:方法是用于相同对象不同属性值的合并

import java.lang.reflect.Field;
import java.lang.reflect.Modifier;

/**
 * Description: 对象合并的工具类
 *
 * @author
 * @date 2018-09-11 上午11:27
 */
public class CombineBeansUtil {


    /**
     * 该方法是用于相同对象不同属性值的合并
* 如果两个相同对象中同一属性都有值,那么sourceBean中的值会覆盖tagetBean重点的值
* 如果sourceBean有值,targetBean没有,则采用sourceBean的值
* 如果sourceBean没有值,targetBean有,则保留targetBean的值 * * @param sourceBean 被提取的对象bean * @param targetBean 用于合并的对象bean * @return targetBean,合并后的对象 */ public static T combineSydwCore(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

你可能感兴趣的:(CombineBeansUtil:方法是用于相同对象不同属性值的合并)