idea序列化自动生成_serialVersionUID在数据序列化中重要性
作用
- 用于判断序列化文件是否已经失效(过期)。
- 序列化的时候会把这个ID写到文件里。
- 读的时候会把这个ID和代码里的ID比较,如果不一致,表示文件里的已经失效。(will result in an InvalidClassException.)
值写为多少
你可以写为1L,也可以让IDEA帮你生成一个。
不写会有什么问题
不写的话,序列话的时候,JVM会帮你动态的生成一个。这个动态生成的算法可能在不同的虚拟机里不一样,也就是不同的环境下生成的可能不同。这就会有一个问题,你序列化产生的文件,别人读的时候会 InvalidClassException。
注意:显示声明serialVersionUID可以避免对象不一致
两种显示的生成方式
一是默认的1L,比如:private static final long serialVersionUID = 1L;
二是根据包名,类名,继承关系,非私有的方法和属性,以及参数,返回值等诸多因子计算得出的,极度复杂生成的一个64位的哈希字段。基本上计算出来的这个值是唯一的。比如:private static final long serialVersionUID = xxxxL;
注意:显示声明serialVersionUID可以避免对象不一致
IntelliJ IDEA 编写类自动生成serialVersionUID
当我们用 IntelliJ IDEA 编写类并实现 Serializable(序列化)接口的时候,可能会遇到这样一个问题,那就是:无法自动生成serialVersionUID
在这里,我们就一起来看看如何利用 IntelliJ IDEA 自动生成serialVersionUID.
第 1 步:安装GenerateSerialVersionUID插件
如上图所示,点击Preferences,进入如下界面:
在这里,选择Plugins,并搜索GenerateSerialVersionUID,如果没有发现此插件,则可以点击Search in repositories进行搜索:
如上图所示,点击install,即可安装此插件。
第 2 步:设置Inspections功能
如上图所示,进入Default Settings,在Inspections设置页面中,勾选Serializable class without 'serialVersionUID',并且还可以在Severity中设置提示级别,如Warning、Error等,默认为Warning,也建议选择Warning级别的提示。
如上图所示,创建一个类并实现Serializable接口,然后按alt+Enter键,即可收到提示,然后选择SerialVersionUID:
如上图所示,显然我们已经利用 IntelliJ IDEA 中自动生成serialVersionUID啦!
idea序列化自动生成_serialVersionUID在数据序列化中重要性相关推荐
- mysql存储过程自动生成周次数据
mysql存储过程自动生成周次数据 1.目的 因项目特殊要求,需按周生成对应批次数据,如周次跨月需要生成两条数据:生成的对应字段如下: 2.步骤: 2.1.创建数据库表 在这里插入代码片 ```CRE ...
- jeesite如何已生成数据的数据源_如何在postman中自动生成接口请求数据,这个功能你需要知道,可结合浏览器和两大抓包工具使用...
在做接口调试或测试时,请求中的每个参数都要按照接口文档填写到postman的对应位置中,很是麻烦.那是否有这样一个功能?可以帮我们自动生成接口数据,无需修改,直接发送请求就可以呢. 这里面我们需要借助 ...
- 深度学习项目一: keras实现歌词的自动生成 (含数据和所需源码)
数据集下载:点我下载数据集 我们实现的是歌词的自动生成. 主要看我在代码中的注释..注释的很详细,不懂可以留言. 1:我们加载所需要的模块,这里的模块都是比较常用的模块 from keras.mode ...
- MySQL利用存储过程自动生成千万条数据
文章目录 前言 一.实现思路 二.实现步骤 1.创建数据库 2.创建存储表和内存表 3.创建所需函数 4.创建存储过程 5.调用存储过程插入数据 6.统计数据库 拓展 总结 前 ...
- doc自动生成html,java web应用中自动生成文章html页面的实现.doc
java web应用中自动生成文章html页面的实现 java web应用中自动生成文章html页面的实现 2009-11-09 00:24:15 标签:web开发,页面转换 [推送到技术圈] 版权声 ...
- 文件夹自动生成html画廊,在 Photoshop 中创建 Web 照片画廊
注意: 要通过 Photoshop CS5 创建 Web 画廊,请参阅 Adobe Bridge 帮助中的创建 Web 照片画廊.要使用以下主题中介绍的较早的可选 Web 照片画廊增效工具,请先下载并 ...
- 如何标题编号自动生成_如何在论文中插入目录和自动编号
在论文中,排版的一大问题莫过于标题自动编号和自动生成目录了,这两项操作涉及到多级列表设置和目录生成两大操作,这篇文章来详细介绍一下这两大操作,让你分分钟搞定论文目录生成和多级列表.视频中的操作可以让大 ...
- python3根据excel表数据自动生成word格式数据报告
目录 1. 完成xlsx数据读取 2.对数据做一些处理 3.生成图表 4.创建word文件 5.将分析结果保存入word文件中 本文主要是讲如何根据简单的xlsx数据,生成word数据报告,首先需要先 ...
- 自动生成100个数据 c语言,用C语言随机函数生成100个不大于100的数的具体算法怎么写?...
http://blog.tianya.cn/blogger/post_show.asp?idWriter=0&Key=0&BlogID=382219&PostID=454742 ...
最新文章
- Recyclerview 添加一个数组
- Java控件模糊半透明_Android如何实现模糊的半透明窗口 | 学步园
- html 表格点击修改全部替换成文本_excel表格计算一个数据在总值中的占比
- (四)工况曲线构建 2019年研究生数学建模D题《汽车行驶工况构建》
- 1.8 循环神经网络的梯度消失-深度学习第五课《序列模型》-Stanford吴恩达教授
- python编程设计大学ppt_Python程序设计-清华大学出版社-董付国第5章-函数的设计和使用PPT...
- 【每周NLP论文推荐】 对话管理中的标志性论文介绍
- 软件工程模块开发卷宗_软件智能化再进一步,未来人人都能开发软件?
- Day 3 in India
- 多系统并行服务器,具有分布式并行I/O接口的分布式并行服务器系统的性能研究...
- android控件详解大全 android开发有关资料
- python的模块导入问题_python的模块导入问题
- vue x 兼容iphone_【前端vue系列】初始化一个vue工程
- 7 EDA实用技术教程【基本语句3】
- MDK5如何生成bin文件
- 为什么登录赛尔号显示服务器未开启,赛尔号之勇者无敌无法打开怎么办 赛尔号之勇者无敌登录不了解决方案...
- 计算机硬件广告语,硬件防毒广告宣传语
- MySql的基石——索引
- Python tkinter(2)深入聊聊窗口
- No query specified
热门文章
- mysql中文编码问题
- 成为LINUX系统管理员几点规则
- 北大青鸟组建与维护企业网络高级技术PPT课件
- hive复合数据类型之struct
- html输入支付密码样式,基于JS实现类似支付宝支付密码输入框
- [转载] 整理下java中stringBuilder和stringBuffer两个类的区别
- cd-rom门锁定什么意思_CD-ROM XA的完整格式是什么?
- Java BigDecimal toBigIntegerExact()方法(带示例)
- 设置header_Nginx的这些安全设置,你都知道吗?
- vb.net变量值变化触发事件_Angular变化检测的理解