侧边栏壁纸
  • 累计撰写 781 篇文章
  • 累计创建 1 个标签
  • 累计收到 1 条评论
标签搜索

序列化

Dettan
2022-03-04 / 0 评论 / 0 点赞 / 30 阅读 / 1,132 字
温馨提示:
本文最后更新于 2022-04-30,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。
💡
ObjectOutputStream FileInputStream
不是以文本方式存的
什么是java序列化?哪些情况不需要序列化?如何实现序列化?
序列化:把对象转换为字节序列的过程称为对象的序列化。 反序列化:把字节序列恢复为对象的过程称为对象的反序列化。 就是持久化
serialVersionUID 什么作用?
唯一标示一个类,反序列化的时候会对比这个id,一样的话就说明就是一个类. 这个最好显式声明,因为自动生成的可能会有BUG. 不用很长,能做区别用就行



serialVersionUID
implements Serializable

private static final long serialVersionUID = 1L;

@Override
    public String toString() {
        return "Sys_user{" +
            "uid=" + uid +
            ", code=" + code +
            ", name=" + name +
            ", password=" + password +
            ", state=" + state +
        "}";
    }

writeObject() 序列化
readObject() 反序列化


try {
    // 对象输出流
    ObjectOutputStream objectOutputStream = new ObjectOutputStream(new FileOutputStream(new File("D://testSerializable")));
    objectOutputStream.writeObject(new User("zhangsan", 100));
    objectOutputStream.close();
// 对象输入流
ObjectInputStream objectInputStream = new ObjectInputStream(new FileInputStream(new File("D://testSerializable")));
User user = (User) objectInputStream.readObject();
System.out.println(user);
objectInputStream.close();

} catch (IOException | ClassNotFoundException e) {
e.printStackTrace();
}




0

评论区