public class BeanCopyUtils {
/**
*
* copy:<br />
* 复制一个对象到另外一个
*
* @author zhangzhaoyu
* @param object
* @return
* @throws Exception
*/
public static void copy(Object org, Object des) throws Exception {
Class<?> orgClassType = org.getClass();
Class<?> desClassType = des.getClass();
//Object objectCopy = desClassType.getConstructor(new Class[]{}).newInstance(new Object[]{});
Field []fields = orgClassType.getDeclaredFields();
for (Field field : fields) {
String filedName = field.getName();
String firstLetter = filedName.substring(0, 1).toUpperCase();
String getMethodName = "get" + firstLetter + filedName.substring(1);
String setMethodName = "set" + firstLetter + filedName.substring(1);
Method getMethod = orgClassType.getMethod(getMethodName, new Class[]{});
Method setMethod = desClassType.getMethod(setMethodName, new Class[]{field.getType()});
if (getMethod != null) {
Object value = getMethod.invoke(org, new Object[]{});
if (setMethod != null) {
setMethod.invoke(des, new Object[]{value});
}
}
}
}
}
分享到:
相关推荐
主要介绍了利用Java反射机制实现对象相同字段的复制操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
java反射机制创建对象实现:java 深度拷贝 -超完美 ,自己做的,下面 package aop; public class Student { private String name; private int age; public String getName() { return name; } public ...
java反射机制创建对象实现:java 深度拷贝 -超完美,只使反射机制,不使用其它封装好的深度拷贝的工具类
java中利用反射复制一个持久化对象
CopyFile.java 文件复制实例 dir.java 显示目录下的所有文件和目录 encrypt.java 文件加密 FileList.java 自己实现的一个文件名称枚举类 MyDataIO.java 数据输入输出示例 MyFileOutput.java 将键盘读入的文字...
使用反射将所有数据从一个对象复制到另一个对象的 Java 实用程序。 “复制”操作,si 基于现有的 getter 和 setter 完成。 源类和目标类必须具有相同的 getter 和相同的 setter 才能工作。 在我的项目中,我总是...
Java反射的使用 这个小例子简单介绍了Java使用反射的各种方法,帮助大家快速掌握Java反射的基本使用方法。例子程序是用Android Studio编写的,如果你使用Eclipse,新建一个工程,拷贝src下面的几个类过去就可以了....
楼主是一名asp.net攻城狮,...但也不能算自己白忙活吧,也找到了其他实现深拷贝的方式(但是每种方式我都觉得并不是太合理,也许是因为c#的方式带入了吧,最后贴出c#版本纯反射实现深拷贝的代码) 方式一:实现Cloneab
本文分为十九个模块,分别是:「Java 基础、容器、多线程、反射、对象拷贝、Java Web 、异常、网络、设计模式、Spring/Spring MVC、Spring Boot/Spring Cloud、Hibernate、MyBatis、RabbitMQ、Kafka、Zookeeper、...
5 JAVA反射机制 6 JAVA注解(ANNOTATION) 7 JAVA中的异常类 8 JAVA-SWING 9 观察者模式 10 内部类讲解 11 JAVA I/O流讲解 12 JAVA多线程 13 JAVA网络通信 14 JAVA类加载器CLASSLOADER 15 JAVA简单工厂...
java核心知识点整理,面试很有用 Java核心知识点2.JVM JVM 是可运行 Java 代码的假想计算机 ,包括一套字节码指令集、一组寄存器、一个...5.6JAVA 序列化(创建可复用的 Java 对象) 5.7JAVA 复制 6. Spring 原理
节点流和处理流 Java IO 的核心类 File Java IO 流对象 字节流对象InputStream OutputStream 字符流对象Reader Writer 字节流与字符流的转换新潮的 NIO 缓冲区(Buffer)通道(Channel) 示例:文件拷贝案例 BIO 和 NIO ...
资源分为十九个模块,分别是: Java 基础、容器、多线程、反射、对象拷贝、Java Web 模块、异常、网络、设计模式、Spring/Spring MVC、Spring Boot/Spring Cloud、Hibernate、Mybatis、RabbitMQ、Kafka、Zookeeper、...
面试题包括以下十九部分:Java 基础、容器、多线程、反射、对象拷贝、Java Web 模块、异常、网络、设计模式、Spring/Spring MVC、Spring Boot/Spring Cloud、Hibernate、Mybatis、RabbitMQ、Kafka、Zookeeper、MySql...
Java基础、容器、多线程、反射、对象拷贝、Java Web、异常、网络、设计模式、Spring/Spring MVC、Spring Boot/Spring Cloud 、Hibernate、Mybatis、RabbitMQ、Kafka、Zookeeper、MySQL、Redis、JVM等多种常用面试...
本文分为十九个模块,分别是: Java 基础、容器、多线程、反射、对象拷贝、Java Web 、异常、网络、设计模式、Spring/Spring MVC、Spring Boot/Spring Cloud、Hibernate、MyBatis、RabbitMQ、Kafka、Zookeeper、MySQ
JavaSE基础、容器、多线程、反射、对象拷贝 Java Web相关的(servlet,JSP)、异常、网络、常见的23种设计模式 java的spring相关的框架:Spring/Spring MVC、 Spring Boot/Spring cloud 数据库链接框架:Hibernate、...
15.2 使用Java反射机制414 15.2.1 获取类型信息414 15.2.2 创建对象417 15.2.3 调用方法419 15.2.4 访问成员变量的值421 15.2.5 操作数组422 15.3 反射与动态代理424 15.3.1 静态代理424 15.3.2 动态代理426 15.4 本...
• 熟悉常见异常分类以及处理,熟悉反射、注解、内部类、泛型、序列化、深浅复制 • 熟悉Java多线程并发中线程基本方法,线程池,线程生命周期,熟悉Java锁中常见锁分类(乐观/悲观锁、自旋锁、独/共享锁、可重入锁、...