黑马程序员技术交流社区

标题: 什么是java序列化 [打印本页]

作者: 赵哲成    时间: 2014-11-24 14:10
标题: 什么是java序列化
看完了视频。没看到对java序列化的描述!!
作者: zhouyunfang    时间: 2014-11-24 14:37
序列化 (Serialization)将对象变成或传输的形式的过程。可以通反序列化重新获得对象。
例如:
ObjectInputStream:对象反序列化过程
ObjectOutputStream:对象序列化过程
其实在java实际开发中,有时候会把某个实体类,绑定到session中,也是需要把实体类序列化之后才可以绑定的。


作者: 与梦逆风而行    时间: 2014-11-24 18:01
/*
* 序列化流:把对象按照流一样的方式存入文本文件或者在网络中传输。对象 -- 流数据(ObjectOutputStream)
* 反序列化流:把文本文件中的流对象数据或者网络中的流对象数据还原成对象。流数据 -- 对象(ObjectInputStream)
*/
public class ObjectStreamDemo {
        public static void main(String[] args) throws IOException,
                        ClassNotFoundException {
                // 由于我们要对对象进行序列化,所以我们先自定义一个类
                // 序列化数据其实就是把对象写到文本文件
                // write();

                read();
        }

        private static void read() throws IOException, ClassNotFoundException {
                // 创建反序列化对象
                ObjectInputStream ois = new ObjectInputStream(new FileInputStream(
                                "oos.txt"));

                // 还原对象
                Object obj = ois.readObject();

                // 释放资源
                ois.close();

                // 输出对象
                System.out.println(obj);
        }

        private static void write() throws IOException {
                // 创建序列化流对象
                ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream(
                                "oos.txt"));

                // 创建对象
                Person p = new Person("林青霞", 27);

                // public final void writeObject(Object obj)
                oos.writeObject(p);

                // 释放资源
                oos.close();
        }
}
作者: 斷灬dian    时间: 2014-12-25 12:09
来学习。。。。。。。。。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2