entitybase.java

来自「达内Java培训实训项目ECPORT原码。 包括逐步优化的四个版本: 简单工」· Java 代码 · 共 37 行

JAVA
37
字号
package com.royee.ecport.pojo;

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

import com.royee.ecport.exception.RoyeeClassNotMatchException;

public abstract class EntityBase extends PojoBase implements Serializable{
	
	public void copyPropertiesFrom(EntityBase eb){
		if(!eb.getClass().equals(this.getClass()))
			throw new RoyeeClassNotMatchException();
		Field[] fields=this.getClass().getDeclaredFields();
		for(Field field:fields){
			if(Modifier.isFinal(field.getModifiers()))
				continue;
			if(Modifier.isStatic(field.getModifiers()))
				continue;
			field.setAccessible(true);
			try {
				if(field.get(eb)!=null)
					field.set(this, field.get(eb));
			} catch (IllegalArgumentException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			} catch (IllegalAccessException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
	}
	
	

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?