美文网首页
Java序列化

Java序列化

作者: 黄二的NPE | 来源:发表于2018-05-23 09:38 被阅读8次
  • 什么是Java序列化

Java序列化是将对象的状态保存为一组字节,Java反序列化是将这些字节组装成对象。必须注意地是,对象序列化保存的是对象的"状态",即它的成员变量。由此可知,对象序列化不会关注类中的静态变量。

  • 为什么会有Java序列化

一般情况下,只有JVM处于运行时,Java对象才能存在,当JVM关闭后,这些对象也随之消失.但是有时候我们需要保存某些Java对象,以免Jvm宕机后数据丢失.这时我们就可以把Java对象序列化然后保存到本地.除了在持久化对象时会用到对象序列化之外,当使用RMI(远程方法调用),或在网络中传递对象时,都会用到对象序列化.

  • 怎么做

  1. 首先我们要让对象实现Serializable(最好重写serialVersionUID)
  2. 服务端
    Cat cat = new Cat(3, "huangzp");
    ObjectOutputStream out = new ObjectOutputStream(new FileOutputStream(new File("D:/cat.out")));
    out.writeObject(cat);
    out.close();
  1. 客户端
    ObjectInputStream in = new ObjectInputStream(new FileInputStream(new File("D:/cat.out")));
    Cat cat = (Cat)in.readObject();
    System.out.println(cat);
    in.close();

PS: 要保证客户端和服务端的序列化类的包名和序列uid要保持一致,否则无法被序列化

  • transient

被transient修饰的字段不用被序列化

相关文章

  • Java-序列化-反序列化

    Thanks Java基础学习总结——Java对象的序列化和反序列化java序列化反序列化原理Java 序列化的高...

  • java序列化那些事儿

    java序列化作用 在说java序列化的作用之前,先说下什么是java序列化吧。java序列化是指把java对象转...

  • Java序列化

    Java序列化的几种方式以及序列化的作用 Java基础学习总结——Java对象的序列化和反序列化

  • Java序列化机制

    Java序列化机制 序列化和反序列化 Java序列化是Java内建的数据(对象)持久化机制,通过序列化可以将运行时...

  • Java 序列化 之 单例模式

    序列化相关文章: Java 序列化 之 Serializable Java 序列化之 Externalizable...

  • java 序列化 原理解析

    序列化相关文章: Java 序列化 之 Serializable Java 序列化之 Externalizable...

  • 认识Java序列化

    我的个人博客,认识Java序列化 引言 将 Java 对象序列化为二进制文件的 Java 序列化技术是 Java ...

  • JDK 序列化

    序列化和分序列化概念 什么是序列化和反序列化 Java序列化是指把Java对象转换为字节序列的过程,而Java反序...

  • Spark序列化

    Java序列化 有关Java对象的序列化和反序列化也算是Java基础的一部分,首先对Java序列化的机制和原理进行...

  • Serializable中为什么要设置UID

    1、什么是Java序列化与反序列化 Java序列化是指把Java对象保存为二进制字节码的过程,Java反序列化是指...

网友评论

      本文标题:Java序列化

      本文链接:https://www.haomeiwen.com/subject/ywpwdftx.html