当前位置: 首页 > news >正文

西安小公司网站建设WordPress文章文字改颜色

西安小公司网站建设,WordPress文章文字改颜色,国外的电商网站有哪些,福州seo按天收费serialVersionUID简要介绍serialVersionUID是在Java序列化、反序列化对象时起作用的一个字段。Java的序列化机制是通过判断类的serialVersionUID来验证版本一致性的。在进行反序列化时#xff0c;JVM会把传来的字节流中的serialVersionUID与本地相应实体类的serialVersionUID进…serialVersionUID简要介绍serialVersionUID是在Java序列化、反序列化对象时起作用的一个字段。Java的序列化机制是通过判断类的serialVersionUID来验证版本一致性的。在进行反序列化时JVM会把传来的字节流中的serialVersionUID与本地相应实体类的serialVersionUID进行比较如果相同就认为是一致的可以进行反序列化否则就会出现序列化版本不一致的异常即是InvalidClassException。序列化是一种把对象持久化到外部的手段。在网络传输等场景中应用广泛如Dubbo等框架。类通过实现 java.io.Serializable 接口以启用其序列化功能。阿里Java规约中的描述阿里规约中强制性的提醒修改serialVersionUID字段会引起反序列化失败的情况。代码演示下面通过实际代码来演示对象序列化、反序列化的操作。引入依赖org.apache.commons commons-lang3 3.8.1commons-io commons-io 2.6junit junit 4.12commons-lang3这个包有帮我们实现了序列化的工具类commons-io帮我们实现了文件操作的工具类junit用来写单元测试。序列化有User.class如下DataBuilderpublic class User implements Serializable {​ private static final long serialVersionUID 1L;​ private String username;​}Data 和 Builder 是Lombok里面的注解可以自动生成getter、setter方法等不懂的可以查看我之前的文章对这个有讲解。需要序列化的类需要实现Serializable接口Serializable是一个标识接口里面没有具体需要实现的东西。序列化代码Testpublic void serializeTest() throws IOException { User user User.builder().username(happyjava).build(); byte[] serialize SerializationUtils.serialize(user); FileUtils.writeByteArrayToFile(new File(serialize.txt), serialize);}SerializationUtils是commons-lang3包给我们提供的工具类它给我们提供了序列化和反序列化的方法我们直接拿过来用就好了。 FileUtils是commons-io包给我们提供的工具类它给我们提供了非常丰富的IO操作工具类。执行方法后查看serialize.txt这就是序列化后保存到外部的对象了。我们可以把它反序列化成为对象。反序列化反序列化代码如下Testpublic void deserializeTest() throws IOException { byte[] bytes FileUtils.readFileToByteArray(new File(serialize.txt)); Object object SerializationUtils.deserialize(bytes); System.out.println(object instanceof User); User user (User)object; System.out.println(user.getUsername());}这里使用FileUtils把外部的文件读入使用SerializationUtils反序列化成为对象。然后判断反序列化后对象的类型强转为User后输出其username运行结果如下说明反序列化已经成功过了修改serialVersionUID值使反序列化异常现在把User的serialVersionUID值做一下修改DataBuilderpublic class User implements Serializable {​ private static final long serialVersionUID 2L;​ private String username;​}之前是1现在改为2再次执行反序列化方法结果如下这里出现了开头提到的InvalidClassException异常并且通过异常信息可以看到这是serialVersionUID不一致引起的。org.apache.commons.lang3.SerializationException: java.io.InvalidClassException: cn.happy.User; local class incompatible: stream classdesc serialVersionUID 1, local class serialVersionUID 2总结通过理论和代码演示我们已经知道了serialVersionUID字段可以造成反序列化失败的情况。所以在做系统升级的时候需要充分考虑是否要改动serialVersionUID的值因为这会引起兼容性的问题。
http://www.zqtcl.cn/news/970879/

相关文章:

  • 无线路由器做中继手机能连接但无法访问网站做一个游戏需要什么技术
  • 如何创建自己的网站建设网站收取广告费用
  • 商务咨询网站源码光做网站推广咋样
  • 重庆 做网站酷站网素材
  • 商城网站建设公司价格海安县建设局网站
  • 做精美得ppt网站知乎厦门官网建设公司
  • 做一个中型网站需要多少钱网站建设的费用是不是含税的
  • 网站上的广告是怎么做的连云港 网站 建设
  • 济南做网站的好公司有哪些怎么做自己的app软件
  • 淄博网站建设团队企业门户网站有哪些
  • 东莞网站建设 织梦建设茶叶网站的目的
  • 做网站的背景图片要多大做房产网站
  • 洛阳做网站公司在哪无锡网络营销推广软件
  • 医疗机械网站怎么做无锡短视频seo
  • 做网站建设哪家公司好如何营销推广
  • 陕西百威建设监理有限司网站做吉祥物设计看什么网站
  • 网络营销站点推广的方法高端网站开发价格
  • 内部优惠券网站怎么做最新国际新闻事件今天
  • 辽宁大学网站怎么做app开发用什么编程语言
  • 3d建模在线制作网站阿里云域名注册官网
  • 创建网站大约多少钱网站建设排序题
  • 大庆做网站找谁机构编制网站建设
  • 网站标题特效网站弹出的对话框怎么做
  • 找深圳网站建设wordpress 页面背景
  • 企业网站怎么维护上海注册建网站
  • 四川省建设工程造价信息网站便宜做网站价格
  • 医院网站优化策划网站开发的项目需求
  • 网站优化公司服务直播软件怎么开发
  • 网站建设 有道翻译织梦修改网站后备份
  • 苏州网联盛网站建设做最好的在线看片网站