序列化和反序列化?序列化ID表示什么意思?
Java的对象序列化就是将实现了Serializable接口的对象转换成一个字节序列,并在以后将这个字节序列完全恢复为原来的对象,这一过程可通过网络进行,意味着序列化机制能自动弥补不同操作系统之间的差异。对象序列化可以实现轻量级持久性。
“持久性”意味着对象的生存周期不取决于程序是否正在执行;它可生存与程序的调用之间。通过将一个序列化对象写入磁盘,然后再重新调用程序时恢复该对象实现持久性。
反序列化就是根据这些保存的信息重建对象的过程。(将字节序列转化为java对象的过程)

序列化过程:
1)创建OutputStream对象,然后将其封装在ObjectOutputStream对象内,如:
ObjectOutputStream out = new ObjectOutputStream(new FileOutputStream(“目标地址路径”));
2)调用writeObject()序列化对象:
out.writeObject(“Hellohi”);

反序列化过程:
1)将InputStream封装在ObjectInputStream内,如:
ObjectInputStream in = new ObjectInputStream(new fileInputStream(“目标地址路径”));
2)调用readObject()
String obj1 = (String)in.readObject();

序列化ID:
在java序列化中,ID起着关键的作用,java的序列化机制是通过在运行时判断类的serialVersionUID来验证版本一致性的。反序列化时,JVM会把传来的字节流中的serialVersionUID与本地实体类中的serialVersionUID进行比较,如果相同则认为是一致的,便可以进行反序列化,否则就会报序列化版本不一致的异常,序列化失败。

参考书籍《Java编程思想》第十八章

java序列化与反序列化相关推荐

  1. java 序列化概念和作用_结合代码详细解读Java序列化与反序列化概念理解

    Java序列化与反序列化是什么?为什么需要序列化与反序列化?如何实现Java序列化与反序列化?本文围绕这些问题进行了探讨. 1.Java序列化与反序列化 Java序列化是指把Java对象转换为字节序列 ...

  2. Java中如何引用另一个类里的集合_【18期】Java序列化与反序列化三连问:是什么?为什么要?如何做?...

    Java序列化与反序列化是什么? Java序列化是指把Java对象转换为字节序列的过程,而Java反序列化是指把字节序列恢复为Java对象的过程: 序列化:对象序列化的最主要的用处就是在传递和保存对象 ...

  3. java序列化与反序列化(转)

    Java序列化与反序列化是什么?为什么需要序列化与反序列化?如何实现Java序列化与反序列化?本文围绕这些问题进行了探讨. 1.Java序列化与反序列化 Java序列化是指把Java对象转换为字节序列 ...

  4. java序列化和反序列化以及序列化ID的作用分析

     java序列化和反序列化 一.概念 java对象序列化的意思就是将对象的状态转化成字节流,以后可以通过这些值再生成相同状态的对象.对象序列化是对象持久化的一种实现方法,它是将对象的属性和方法转化为一 ...

  5. java序列化和反序列化_Java恶意序列化背后的历史和动机

    java序列化和反序列化 与Java的序列化机制相关的问题已广为人知. 有效的Java 1st Edition (第10章)和有效的Java 2nd Edition (第11章)的整个最后一章都专门讨 ...

  6. 教你彻底学会Java序列化和反序列化

    Java序列化是什么? Java序列化是指把Java对象转换为字节序列的过程,Java反序列化是指把字节序列恢复为Java对象的过程.反序列化:客户端重文件,或者网络中获取到文件以后,在内存中重构对象 ...

  7. 理论 | 教你彻底学会Java序列化和反序列化

    这是小小本周的第四篇 Java序列化是什么? Java序列化是指把Java对象转换为字节序列的过程,Java反序列化是指把字节序列恢复为Java对象的过程.反序列化:客户端重文件,或者网络中获取到文件 ...

  8. Java序列化与反序列化(一)

    目录 序列化与反序列化 1.最简单的使用:Serializable 接口 2. 序列化 ID 的问题 3. 静态字段不会序列化 4. 屏蔽字段:transient 5. 父类的序列化 6. 自定义序列 ...

  9. Serializable详解(1):代码验证Java序列化与反序列化

    说明:本文为Serializable详解(1),最后两段内容在翻译上出现歧义(暂时未翻译),将在后续的Serializable(2)文中补充. 介绍:本文根据JDK英文文档翻译而成,本译文并非完全按照 ...

  10. Java 序列化与反序列化

    Java 序列化与反序列化 文章目录 Java 序列化与反序列化 1 序列化与反序列化的概念 2 核心类与关键字总览 3 序列化与反序列化的过程 3 应用示例 4 序列化版本号的作用 serialVe ...

最新文章

  1. VBOX Ubuntu设置与Windows的共享文件夹
  2. 初中信息技术说课python_第一单元 走进Python 编程世界
  3. PMP-【第3章 项目管理过程】-2021-1-11(61页-87页)
  4. 【BZOJ3769】spoj 8549 BST again DP(记忆化搜索?)
  5. 【图像处理】——图像内插法
  6. [C++基础]034_C++模板编程里的主版本模板类、全特化、偏特化(C++ Type Traits)
  7. Bert/Transformer汇总
  8. excel按条件查询mysql_Excel中实现多条件查找的15种方法
  9. 使用nginx简单实现负载均衡
  10. 我是技术男,也曾创过业,也曾拿过风投...
  11. APUE学习(一)基础知识
  12. 回溯 + 剪枝 无重复元素的数组 candidates 和一个目标数 target 数字可以无限制重复被选取
  13. js限制input的输入字符的长度,区分中英文
  14. 研调:2018年40%智能手机将用柔性面板
  15. 军事ar虚拟现实电子沙盘系统的功能
  16. 延云YDBYA100安装部署文档
  17. java实现图形界面输入半径求圆面积_【读】Java核心技术卷1
  18. 复现lio_sam激光slam算法创建点云地图
  19. 求知若饥,虚心若愚——Stay Hungry, Stay Foolish
  20. SSM学生选课管理系统项目中问题总结(未完待续)

热门文章

  1. hive-jdbc 的大坑
  2. 基于深度学习的两种信源信道联合编码
  3. 笔记——51控制DS18B20温度控制篇章之终章温度报警
  4. 贵阳个税系统代理服务器地址,贵阳金三个税服务器地址
  5. 计算机提示没有有效的ip配置,Win7本地连接没有有效的ip配置怎么办?
  6. Freesurfer教程(ubuntu)
  7. C++编写一个求x的n次方的函数(其中n为非负整型)
  8. 2021西部云安全峰会召开:“云安全优才计划”发布,腾讯云安全攻防矩阵亮相
  9. javascript 异步编程二(转载 from 司徒正美)
  10. 《黑镜》第一季观后感