最近项目上用到了一些Deep Clone的库,但是原来使用的库速度略慢,直接拖累了应用。
今天有空看了一下相关的可用的第三方库。
深拷贝
Apache旗下的Commons-Lang3包有一个序列化的工具SerializationUtils,可以做深拷贝。
当然前提是你的类实现了序列化接口。
Java Deep Cloning Library是我觉得最好用的一个。它的深拷贝通过反射实现,适合用于你
不能控制的第三方类或者没有实现序列化的类。
浅拷贝
还是Apache旗下,不过不是Commons-Lang3,而是Commons-Beanutils。其中BeanUtils提供了一个cloneBean方法。
可以直接简单的操作。
如果项目依赖了Spring的库,那么直接使用BeanUtils即可。
发表回复