If all the objects within the bean implement Serializable
interface, will BeanUtils.cloneBean()
do a deep copy?
No, cloneBean()
does shallow copy only. If you want deep copy. You may refer this link which has technique to do deep copy.
There is also another java library which supports both shallow cloning and deep cloning. It offers deep cloning without the need to implement Serializable.
Here
Use SerializationUtils.clone method from the Apache Commons Lang for the deep copy. It copies the entire class hierarchy.
SerializationUtils.clone(object);