深拷贝工具类DeepCopyUtil
深拷贝工具类DeepCopyUtil
GitHub: link. 欢迎star
import lombok.extern.slf4j.Slf4j;import java.io.*;
import java.util.List;/*** @author Andon* 2021/11/10* <p>* 深拷贝*/
@SuppressWarnings({"unchecked", "Duplicates"})
@Slf4j
public class DeepCopyUtil {/*** List深拷贝 条件:需要model实现Serializable*/public static <T> List<T> deepCopy(List<T> t) {try {// 写入字节流ByteArrayOutputStream byteOut = new ByteArrayOutputStream();ObjectOutputStream out = new ObjectOutputStream(byteOut);out.writeObject(t);ByteArrayInputStream byteIn = new ByteArrayInputStream(byteOut.toByteArray());ObjectInputStream in = new ObjectInputStream(byteIn);return (List<T>) in.readObject();} catch (IOException | ClassNotFoundException e) {log.info("deepCopy failure!! error={}", e.getMessage());e.printStackTrace();return null;}}/*** 对象深拷贝 条件:需要model实现Serializable*/public static <T> T deepCopy(T t) {try {// 写入字节流ByteArrayOutputStream baos = new ByteArrayOutputStream();ObjectOutputStream oos = new ObjectOutputStream(baos);oos.writeObject(t);ByteArrayInputStream bais = new ByteArrayInputStream(baos.toByteArray());ObjectInputStream ois = new ObjectInputStream(bais);return (T) ois.readObject();} catch (IOException | ClassNotFoundException e) {log.info("deepCopy failure!! error={}", e.getMessage());e.printStackTrace();return null;}}
}
GitHub: link. 欢迎star
深拷贝工具类DeepCopyUtil相关推荐
- Java 对象深拷贝工具类
目录 1. 使用场景 1.1 场景一 1.2 场景二 2. Spring 中的对象拷贝 3. 本工具类中的对象拷贝 3.1 拷贝对象本身(单个) 3.2 拷贝对象本身(批量) 3.3 拷贝对象属性至其 ...
- apache commons常用工具类
1.有些情况下,Arrays满足不到你对数组的操作?不要紧,ArrayUtils帮你 ArrayUtils public class TestMain { public static void ma ...
- 整理Java相关的工具类Utils,持续更新中,建议收藏【目前更新至24】
文章目录 1.BigDecimalUtil 2.CaptchaUtil 图片验证码工具类 3.CoordinateTransformUtil 坐标系转换工具类 4.DateUtil 日期加减工具类 5 ...
- objectArx --- 工具类
目录 一.转换类 二.数学计算类 三.几何计算类 四.字符串工具类 4.1 类定义 4.2 测试代码 五.文件操作类 5.1 类定义 5.2 测试代码 一.转换类 功能:显式转换不同数据类型 筛选器O ...
- BeanCopy 常用工具类
目录 Bean Copy常见工具类 硬编码 MapStruct(推荐) cglib的BeanCopier spring-beans的BeanUtils apache的BeanUtils 浅拷贝与深拷贝 ...
- Spring--BeanUtils工具类--使用/实例
原文网址:Spring--BeanUtils工具类--使用/实例_IT利刃出鞘的博客-CSDN博客 简介 说明 本文介绍Spring的BeanUtils工具类的用法. 我们经常需要将不 ...
- 使用BeanCopier工具类拷贝JavaBean
JavaBean拷贝 深拷贝和浅拷贝概念 浅拷贝 Shallow Copy 对基本类型的属性会进行值传递,当修改其中一个对象中的属性时,不会影响另一个对象中的属性 对引用数据的属性,比如数组或某类对象 ...
- android文件管理工具类,GitHub - RyanYans/Android-Utils: 安卓开发 常用 工具类 汇总
天下文章一大抄,因为从开始学习到现在大约一年多 积攒的工具类.很多都是别人的. 但是也不知道是谁的了 如果涉及什么的问题.请联系我.我会做出相应修改: PS:不懂怎么用的,都可以看demo 一些都是已 ...
- java日期转化工具类
package com.rest.ful.utils;import java.text.DateFormat; import java.text.ParseException; import java ...
最新文章
- 项目管理协作软件,打造超强执行力团队!
- python编程小学生学好吗-小学生都开始学的Python编程到底是什么?
- BUU——WMCTF2020 - easy_re
- 源代码管理-SVN自动更新
- android 两个客户端间的通信(Socket通信)
- MVC中提交表单的4种方式
- flex Module之间的通信
- 数据库之架构:主备+分库?主从+读写分离?
- Cypress USB 芯片固件修改,改序列号(Serial Number)
- python零基础教学plc_编程零基础应当如何开始学习 Python?
- 【安全知识分享】PPTX|精益安全管理(130页)(附下载)
- ionic 中使用 slidebox 利用angular ng-repeat 渲染后不显示问题
- kappa一致性检验教程_Kappa系数一致性检验和配对卡方检验SPSS图文详解
- VB代码窗口鼠标滚轮的使用
- 囍囍囍~~~ 以后可能用的着
- CTF-代码审计(2)
- 深入理解JVM(程序编译与代码优化篇)
- 常用的八款免费程序员喜欢的代码编辑器推荐「你用哪个」
- oracle--函数COALESCE
- Windows10操作系统共享文件夹给VMWare虚拟机Ubuntu18.04操作系统使用