通过深克隆将复制数据到另一个对象

想将一个对象的数据复制到另一个对象上面,用BeanUtils等著名的开源类来操作时,结果有些属性没有数据时()出现空指针异常,主要是这里面还有相关方法导致,也不想去管它里面还有什么关联方法了,直接自己写一个做一个深克隆了事。

         很简单,就是做了个序列化和反序列化。

     对集合更有用些,如果想用集合里的对象值,但又需要构建新的对象时。

 

public  <T> T copy(Object source) throws IOException, ClassNotFoundException{
           ByteArrayOutputStream bos = new ByteArrayOutputStream();
           ObjectOutputStream oos = new ObjectOutputStream(bos);
           oos.writeObject(source);
           ObjectInputStream ois = new ObjectInputStream(new ByteArrayInputStream(bos.toByteArray()));
           return (T)ois.readObject();
         }

你可能感兴趣的:(对象)