实体类中如何自动生成serialVersionUID

1. 为什么要实现序列化接口Serializable?

答:实现序列化接口Serializable的目的是为了类可持久化,Java中的序列化机制能够将一个实例对象信息写入到一个字节流中(只序列化对象的属性值,而不会去序列化方法),序列化后的对象可用于网络传输(远程),或者持久化到数据库、磁盘中(本地存储)。为系统的分布和异构部署提供先决条件。若没有序列化,现在我们所熟悉的RPC(Remote Procedure Call,远程调用),对象数据库都不可能存在。

2.serialVersionUID是干什么用的?

serialVersionUID适用于java序列化机制。简单来说,JAVA序列化的机制是通过判断类的serialVersionUID来验证的版本一致的。在进行反序列化时,JVM会把传来的字节流中的serialVersionUID于本地相应实体类的serialVersionUID进行比较。如果相同说明是一致的,可以进行反序列化,否则会出现反序列化版本一致的异常,即是InvalidCastException。

3.实体类中如何自动生成serialVersionUID?

(1)在IDEA中生成UID,首先找到文件菜单下的设置

 

 

 (2)在Setting中,根据路径Editor->Inspections->Java进入下图所示

 

 

 (3)在Java目录下,根据路径Serialization issues -> Serializable class without 'serialVersionUID',在其后面打上勾,保存应用(apply)就行了。

 

 

 (4)看一下效果。

  a.实体类会有提示

 

  b.Alt + Enter 会出现如下图所示选项,确认就行

 

 

 

  c.生成了serialVersionUID

 

 

 

posted @   10114  阅读(216)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
点击右上角即可分享
微信分享提示