gpt4 book ai didi

java - 为什么要在模型上实现 Serializable?

转载 作者:行者123 更新时间:2023-11-30 10:19:04 26 4
gpt4 key购买 nike

我注意到在 Spring-boot 中很多人创建模型/实体并实现 Serialiazable 接口(interface)。

public class ModelBase implements Serializable 

我理解序列化数据/类的含义,因为它使您能够保存类的状态(如果我没记错的话,例如保存到文件中)。

但我认为只有在必要时才应该这样做,但无论哪种方式,人们似乎都倾向于实现接口(interface)。

还有其他原因吗?

最佳答案

当您的模型或实体要在多个 JVM 之间传输时,您可能需要考虑实现 Serializable 接口(interface)。你应该谨慎地这样做。您还应该为要在序列化期间使用的类提供一个有效的 UUID,反之亦然。

样本是

private static final long serialVersionUID = 9178661439383356177L;

根据 JPA 规范:

如果要将实体实例作为分离对象按值传递(例如,通过远程接口(interface)),实体类必须实现可序列化接口(interface)。

还有

当使用可序列化值时,可以通过两种方式更改实体类来消除这种冗余:

使实体类可序列化,这样它就可以用来代替值类。

使关键字段成为临时字段,这样它们就不会冗余地存储在记录中。

https://docs.oracle.com/cd/E17277_02/html/collections/tutorial/SerializableEntity.html

关于java - 为什么要在模型上实现 Serializable?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48869771/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com