package com.yd.wmsc.util; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.ObjectInputStream; import java.io.ObjectOutputStream; public class CloneUtil { @SuppressWarnings("unchecked") public static <T> T deepCopy(T obj) throws IOException, ClassNotFoundException { ByteArrayOutputStream byteArrayOutputStream =new ByteArrayOutputStream(); ObjectOutputStream objectOutputStream = new ObjectOutputStream(byteArrayOutputStream); objectOutputStream.writeObject(obj); ByteArrayInputStream byteArrayInputStream =new ByteArrayInputStream(byteArrayOutputStream.toByteArray()); ObjectInputStream objectInputStream =new ObjectInputStream(byteArrayInputStream); return (T)objectInputStream.readObject(); } }