最近给xxx写一个项目时,在项目中用到一些需要加载数据库和本体库并经过计算得到的变量,因为要通过swing对变量做可视化展示,所以在重绘时只需要读取序列化之后的变量即可:但要注意以下几点
1、基本类型的数据可以直接序列化;一些容器类的对象已经要序列化;例如Vector<T>,若T不 是基本类型需要实现Serializable接口;
2、static和transient类型的成员数据不能被串行化。因为static代表类的状态, transient代表对象的临时数据;
3、相关的类和接口:在java.io包中提供的涉及对象的串行化的类与接口有ObjectOutputStream类、ObjectInputStream类。
4、串行化中的继承:如果父类实现了序列化,子类也可以序列化;在子类继承父类时如果父类没有实现串行化接口,那么其必须有默认的构造函数(即没有参数的构造函数)。否则编译的时候就会报错。在反串行化的时候,默认构造函数会被调用。但是若把父类标记为可以串行化,则在反串行化的时候,其默认构造函数不会被调用。
5、在通过对象流写入文件时一定要注意,将对象流中的对象flush出来,否则在反序列化时会有发现某些对象没有从对象流中读出。
//TreeNode是实现序列化接口的类;TreeView.getFourthPeriodNodes()是静态的不能
//序列化所以重新定义局部变量进行序列化
Vector <TreeNode> v4 = new Vector<TreeNode>(TreeView.getFourthPeriodNodes());
FileOutputStream fos = new FileOutputStream(file);
BufferedOutputStream bos = new BufferedOutputStream(fos);
ObjectOutputStream objectOut = new ObjectOutputStream(bos);
objectOut.writeObject(v1);
objectOut.flush();//这里之前忘了写,在读取时就读不出来
objectOut.close();
//读取对象流
FileInputStream fis = new FileInputStream(file);
ObjectInputStream objectIn = new ObjectInputStream(fis);
TreeView.setFirstPeriodNodes((Vector<TreeNode>)objectIn.readObject());
分享到:
相关推荐
Xson是一个Java对象序列化和反序列化程序。支持Java对象到字节数组的序列化,和从字节数组到Java对象的反序列化。 Maven: <groupId>com.github.xsonorg</groupId> <artifactId>xson-core <version>1.0.1 ...
java 序列化对象 MARSHALLING UNMARSHALLING
在java.beans包中,有两个好东西,XMLEncoder和XMLDecoder。从XML存取对象真是太费力气啦。做了小工具类,以后可以用用了。本文介绍了这两个可以把JAVA对象序列化保存为XML文件的工具类。
序列化的过程就是对象写入字节流和从字节流中读取对象。...对象序列化功能非常简单、强大,在RMI、Socket、JMS、EJB都有应用。对象序列化问题在网络编程中并不是最激动人心的课题,但却相当重要,具有许多实用意义。
这是Java序列化标准规范,对于研究序列化源码能够提供指导作用,为深入研究Java序列技术奠定基础。
Java对象序列化详细解析.docJava对象序列化详细解析.docJava对象序列化详细解析.docJava对象序列化详细解析.docJava对象序列化详细解析.docJava对象序列化详细解析.docJava对象序列化详细解析.docJava对象序列化详细...
NULL 博文链接:https://pxchen.iteye.com/blog/701552
一个java 对象序列化的测试程序 . 。
java对象 java序列化 java反序列化
Java对象序列化的秘密
本文介绍了Java对象序列化的五种方式,并提供了选择最适合应用程序的数据格式和技术所需要的全部信息。这篇文章侧重于可以用来生成 Java对象以数据为中心的视图的技术。演示可以把 JavaBeans变成XML文档的各种方法,...
对象序列化.ppt 对象序列化.ppt 对象序列化.ppt 对象序列化.ppt 对象序列化.ppt
关于Java对象序列化您不知道的5件事Java开发Java经验技巧共11页.pdf.zip
将Java对象序列化成ISO-8859-1、Base64字节流和Xml字符串三种方式。
java 对象的序列化与反序列化 java 对象的序列化与反序列化
主要介绍了java对象序列化与反序列化的默认格式和json格式使用示例,需要的朋友可以参考下
Java对象序列化详细解析[参考].pdf
所谓对象序列化就是将对象的状态转换成字节流,以后可以通过这些值再生成相同状态的对象。这个过程也可以通过...像RMI、Socket、JMS、EJB它们中的一种,彼此为什么能够传递Java对象,当然都是对象序列化机制的功劳。
Java中的序列化机制有两种实现方式: 一种是实现Serializable接口 另一种是实现Externalizable接口 区别: 实现Serializable接口 1 系统自动储存必要的信息 2 Java内建支持,易于实现,只需实现该接口即可,无须任何...