JavaBean 合并属性值

一值以来使用hibernate在update数据时各种不方便。主要是每次更新数据的时候都要先load 再检查哪些数据被修改了然后再save,很是苦逼啊。

于是顺便写了一个 合并bean属性的方法,果然舒心多了。不过性能还没有测试过。用的Java反射,估计是一个悲催的结果。

好了,不多说了。

代码如下:

public class BeanUtils {
	
	public static <T> void mergeObject(T origin, T destination) {
		if (origin == null || destination == null)
		    return;
		if(!origin.getClass().equals(destination.getClass()))
                  return;
		 
		Field[] fields =origin.getClass().getDeclaredFields();
		for (int i = 0; i < fields.length; i++) {
			try {
				fields[i].setAccessible(true);
				Object value = fields[i].get(origin);
				if (null != value) {
					fields[i].set(destination, value);
				}
				fields[i].setAccessible(false);
			}catch (Exception e) {
			} 
		}
	}
}

你可能感兴趣的:(BeanUtils,merge,mergebean,合并属性)