serialVersionUID的作用:
通过判断实体类的serialVersionUID来验证版本一致性的。在进行反序列化时,JVM会把传来的字节流中的serialVersionUID与本地相应实体类的serialVersionUID进行比较,如果相同就认为是一致的,可以进行反序列化,否则就会出现序列化版本不一致的异常。
生成实体类的serialVersionUID方法:
1、写上默认的1L,比如:private static final long serialVersionUID = 1L;
2、用idea自动生成。
①点击File->Setting->Plugins->Browse Repositories,然后搜索GenerateSerialVersionUID的插件,下载、安装后关闭IDEA,然后再打开项目。
②默认情况下IntellijIDEA是关闭了继承了Java.io.Serializable的类生成serialVersionUID的警告。如果需要idea提示生成serialVersionUID,那么需要做以下设置:
Ⅰ、File->setting->Inspections->Serializationissues,将其展开后将serialzable class without "serialVersionUID"打上勾;
Ⅱ、将光标放到类名上,按alt+enter键,就会提示生成serialVersionUID了。