序列化和数据库存储之间的区别

Pur*_*esh 3 java serialization

序列化和数据库存储有什么区别在java?序列化是否实际意味着将数据存储在服务器上的数据库中?

del*_*ree 8

让我们把数据库想象成一个碗.

在此输入图像描述

如果你想让东西无处可去,你就把它放在碗里.

你的东西是你想要存储的数据.现在它在桌子上,在一个盒子里. 在此输入图像描述

所以我们要从那个盒子里取出东西.问题是,我们盒子里的东西可能不适合放入碗中.我们如何解决这个问题?

我们需要将它改变成适合我们碗的物体类型.我们需要序列化它.

在此输入图像描述

我们的序列化数据现在可以放入碗中.所以我们把我们的序列化数据拿到碗里,我们吃了当天最重要的一餐.

在此输入图像描述

如果这一切都非常复杂.简化:序列化改变,数据库存储东西的地方.通常,在存储之前更改内容.


Mik*_*sen 0

一点都不。Java 中的序列化是一个 API,它生成对象的可存储版本,您可以稍后从磁盘(或存储它的任何地方)加载该对象,并将其重新转换为对象(希望如此!)与以前的状态相同。它还有其他替代方案,例如Google Protobufs,它更适合网络应用程序,但对于大多数简单用途来说已经足够了。