inovke copy bean

来源:互联网 发布:mac如何安装zip文件 编辑:程序博客网 时间:2024/06/05 16:49
public Object copyBean(Object source) throws Exception{String getMethodName = "";String setMethodName = "";Method getMethod = null;Method setMethod = null;Class<? extends Object> sClass = source.getClass();//用对象类型创建对象并获得对象的一个拷贝Object destination = sClass.getConstructor(new Class[]{}).newInstance(new Object[]{}) ;Class<? extends Object> dClass = destination.getClass();Field[] fields = sClass.getDeclaredFields();for(int i = 0; i < fields.length; i++){getMethodName = "get" + fields[i].getName().substring(0,1).toUpperCase() + fields[i].getName().substring(1);setMethodName = "set" + fields[i].getName().substring(0,1).toUpperCase() + fields[i].getName().substring(1);getMethod = sClass.getMethod(getMethodName, new Class[]{});setMethod = dClass.getMethod(setMethodName, new Class[]{fields[i].getType()});Object value = getMethod.invoke(source, new Object[]{});setMethod.invoke(destination, new Object[] {value});}return destination;}

原创粉丝点击