定义:
序列化是一个过程,是把一些数据结构或对象转换成是可以存储(比如保存到文件,内存,数据库)或者是可以传输(比如网络传输)的格式。当然,这个格式的数据是可以反过来还原成数据结构或对象的。
简单理解:
序列化就是把编程语言里的对象转换成是字符串(实际上不是字符串,而是字节流,不过初学者可以简单这么无脑理解)。
反序列化就是把字符串(实际上是字节流)还原成计算机语言中的对象的过程。
JSON
json的本质是字符串,是一种特定格式的字符串。
发post请求时候将json发到服务器的意思就是把json格式的字符串发送到服务器。
json尽管是来自于js,但当前很多编程语言都支持 JSON 格式数据的生成和解析。
以python为例
dict -> JSON 字符串: 序列化
JSON字符串 -> dict: 反序列化
把json字符串还原成python字典的过程,叫做反序列化;
把python字典转换成json字符串的过程,叫做序列化;
python字典是python编程语言中的一种数据结构,因而满足我们刚才的定义:序列化就是把编程语言里的对象转换成是字符串。
总结
- 把对象变成字符串的过程是:序列化
- 把字符串还原成对象的过程是:反序列化