IDEA如何自动生成serialVersionUID的设置

作者:HE-Tongkun 时间:2023-08-09 04:00:33 

序列化和反序列化

Java是面向对象的语言,与其他语言进行交互(比如与前端js进行http通信),需要把对象转化成一种通用的格式比如json(前端显然不认识Java对象),从对象到json字符串的转换,就是序列化的过程,反过来,从json字符串转换成Java对象,就是反序列化的过程。

serialVersionUID是什么

反序列化的过程,需要从一个json字符串生成一个Java对象。


Gson gson = new Gson();
Request req = gson.fromJson("request string", Request.class)

这时候会有问题,需要验证输入的json字符串是否是从当前的Request这个类序列化过去的,serialVersionUID就是用来干这个的。当序列化的时候的serialVersionUID与反序列化的时候的serialVersionUID不一致的时候,会跑出InvalidCalssException。 

具体的序列化过程是这样的:序列化操作的时候系统会把当前类的serialVersionUID写入到序列化文件中,当反序列化时系统会去检测文件中的serialVersionUID,判断它是否与当前类的serialVersionUID一致,如果一致就说明序列化类的版本与当前类版本是一样的,可以反序列化成功,否则失败。

如何生成

首先我们会实现接口,那么如何自动生成serialVersionUID呢。

IDEA如何自动生成serialVersionUID的设置

1、没有设置之前,选中对应的类名,然后按 alt+enter 快捷键 的情况如下所示

IDEA如何自动生成serialVersionUID的设置

2、设置自动生成 serialVersionUID 的方式如下图所示

IDEA如何自动生成serialVersionUID的设置

3、设置之后,选中对应的类名,然后按 alt+enter 快捷键 的情况如下所示

IDEA如何自动生成serialVersionUID的设置

4、点击就可以自动生成了。

来源:https://blog.csdn.net/hetongun/article/details/81904393

标签:IDEA,serialVersionUID
0
投稿

猜你喜欢

  • 一篇文章带你了解Java Stream流

    2022-11-05 10:26:18
  • Java数据结构之常见排序算法(下)

    2022-05-03 12:49:51
  • Android 用HttpURLConnection访问网络的方法

    2023-05-18 17:33:01
  • java复制文件的4种方式及拷贝文件到另一个目录下的实例代码

    2023-05-15 16:03:25
  • JAVA线程池原理实例详解

    2021-10-01 17:59:01
  • ViewPager实现带引导小圆点与自动跳转的引导界面

    2021-07-11 12:25:18
  • Android自定义 WebView浏览器

    2023-07-21 00:31:34
  • 详解SpringBoot+Mybatis实现动态数据源切换

    2022-06-04 02:42:02
  • 解决springcloud中Feign导入依赖为unknow的情况

    2022-02-03 14:05:45
  • Android开发工程中集成mob短信验证码功能的方法

    2022-12-15 06:37:02
  • C#中OpenCvSharp 通过特征点匹配图片的方法

    2023-07-14 08:10:55
  • Android手势识别功能

    2022-07-23 22:04:26
  • Android PowerManagerService省电模式策略控制

    2023-11-25 02:46:53
  • 全面解析SpringBoot文件上传功能

    2023-02-26 15:55:56
  • Java web项目中的强制登录功能实现代码

    2023-09-14 08:26:18
  • Java数据结构与算法之稀疏数组与队列深入理解

    2022-05-31 06:33:11
  • Android继承ViewGroup实现Scroll滑动效果的方法示例

    2023-09-20 16:21:42
  • Android通过aapt命令获取apk详细信息(包括:文件包名,版本号,SDK等信息)

    2023-11-01 11:29:19
  • 一文带你学会Java事件机制

    2022-07-22 05:05:11
  • java——多线程基础

    2021-08-08 04:14:25
  • asp之家 软件编程 m.aspxhome.com