当前位置: 首页 > 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.pierceye.com/news/970879/

相关文章:

  • 做360pc网站排名首页学校网站建设工作计划
  • 网站设计与制作的基本步骤移动互联网论文
  • 建设部网站2015年第158号中国建筑材料网官网
  • 大理网站建设沛宣郑州模板建站代理
  • 新浪博客怎么上传wordpress佛山推广seo排名
  • 北京建设网站有哪些公司网络营销方法有哪几种
  • 在中国备案的网站服务器利用小说网站做本站优化
  • 网站风格的表现形式重庆观音桥房价
  • 哪些公司的网站做的很好手机网页素材
  • 天津地铁建设网站百度广告太多
  • 保定php网站制作wordpress的seo收件箱
  • 网站建设公司-跨界鱼科技优外国网站设计风格
  • 网站营销平台注册微信公众号流程
  • 西安专业网站建设服务公司商标查询网入口
  • 营销型网站设计房地产wordpress多媒体路径
  • 门户网站建设解决方案wordpress图片广告
  • 哈尔滨h5模板建站设计一个软件需要多少钱
  • 青岛网站建设方案服务惠民卡看电影怎么用
  • 兰州新站点seo加盟网站建设工作有底薪吗
  • 哈尔滨建设网站官网清远头条新闻
  • 泉州网站设计平台wordpress cenos
  • 网站内容批量替换站长之家网站素材
  • asp.net 获取网站域名展览馆展示设计
  • 网站网页设计公司家庭做网站
  • php网站开发实战的书网站开发排行榜
  • 摄影师都在哪些网站发布作品云虚拟主机搭建网站
  • 中小企业电子商务网站建设传奇手游代理平台
  • 网站建设需要每年交钱吗如何选择宣传片制作
  • 建设网站为网站网站做广告芜湖市网站建设
  • 网站建设和维护怎么学android开发编辑wordpress