实体类在序列化与反序列化的时候,需要有serialVersionUID来标记不同的类,下面介绍方法
实体对象实现了java.io.Serializable
接口后,一般都会提供一个serialVersionUID
以做版本区分。在idea里,可以通过设置来快速生成serialVersionUID
。
如果类里面嵌套了类,则里面的类也应该生成serialVersionUID
设置方法
1、打开Preferences–>Editor–>Inspections,然后在右侧输入UID
进行搜索(搜索方式比较快,也可以在java–>Serialization issues里找)。然后勾选Serializable class without 'serialVersionUID'
后面的复选框。右侧Severity
默认Warning
即可。如下图:
2、测试,新建一个实体Student
,实现java.io.Serializable
接口,然后将光标放到类名Student
上,按option+ return
(window按alt+enter
,快捷键可能不一样,根据自己的设置来)打开提示框,选择Add 'serialVersionUID' field
确定即可,如下图:
生成的serialVersionUID
如下: