为什么在模型上实现序列化



我在弹簧靴中注意到很多人创建模型/实体并实现Serialiazable接口。

public class ModelBase implements Serializable 

我了解序列化数据/类的含义,因为它可以保存类的状态(如果我没错,则可以使用文件(。

,但我相信只有在必要时才进行,但是无论哪种方式,人们似乎都倾向于实现界面。

有不同的原因吗?

当您的模型或实体旨在跨多个JVM旅行时,您可能需要考虑实现可序列化接口。您应该谨慎执行此操作。您还应该为在序列化过程中使用班级使用的有效UUID,反之亦然。

样本是

private static final long serialVersionUID = 9178661439383356177L;

根据JPA规格:

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

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

使实体类可序列化,因此可以代替值类。

使关键字段瞬态,因此不会在记录中冗余存储。

https://docs.oracle.com/cd/e17277_02/html/collections/tutorial/serializabletity.html

最新更新