天天JAVA:序列化与反序列化

本文详细介绍了Java中的序列化与反序列化,包括其由来、能力、实现方式、关键字transient和static的作用,以及serialVersionUID的重要性。文章还探讨了多种序列化格式,如Json、XML和YAML,并列举了Java中实现序列化的多种方法,如ObjectOutputStream和Externalizable接口。最后,提到了序列化在ORM框架如MyBatis中的应用。
摘要由CSDN通过智能技术生成

title: 序列化与反序列化?
tags: 序列化与反序列化、serialVersionUID、transient
categories: Java基础


序列化与反序列化

由来

文件信息的诉求
  • 索引定位(高效的、确定的)
  • 备份还原(一致的、少冗余)
  • 传递交流(完整的、便捷的)
Java对象的诉求(类比文件信息)
  • 索引定位(高效的、确定的):引用锁定对象真身。
  • 备份还原(一致的、少冗余):持久化对象真身。
  • 传递交流(完整的、便捷的):?

能力

如何完整的、便捷的在网络中传递Java对象?序列化对象真身。
  • 序列化:Java对象->字节流
  • 反序列化:字节流->Java对象
  • 字节流:可以网络传输(二进制形式)。

实现

  • java version “1.8.0_144”
Serializable接口
  • java提供的通用数据保存和读取的接口。
  • 只有实现Serializable接口的对象才可以被写入字节流。(约定ÿ
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值