关于序列化和对象流
来源:互联网 发布:asp.net 电商源码 编辑:程序博客网 时间:2024/05/17 12:54
一、对象序列化:
1.在做对象数据传输时,由于对象中的数据很庞大。在传输之前,需要将对象打散成字节序列,以利于传输。这个过程叫序列化过程。
2.达到目的地后,又需要将字节序列还原成对象,这叫反序列化过程。
二、对象流使用示例:
package com;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStream;import java.io.ObjectInputStream;import java.io.ObjectOutputStream;import java.io.OutputStream;public class ObjectStreamTest {/** * 写入对象 * * @param obj * 要写入文件的对象 */public void writerObj(Object obj) {OutputStream out = null;// 写入流ObjectOutputStream objOut = null;// 对象写入流try {out = new FileOutputStream("2.txt");objOut = new ObjectOutputStream(out);objOut.writeObject(obj); // 写入对象} catch (Exception e) {e.printStackTrace();} finally {try {// 关闭流objOut.close();out.close();} catch (IOException e) {e.printStackTrace();}}}/** * 读取文件,返回文件中写入的对象 * * @return * @throws */public Student read() {InputStream in = null;// 读取流ObjectInputStream objIn = null;// 对象读取流try {in = new FileInputStream("2.txt");objIn = new ObjectInputStream(in);// 读取对象Object obj = objIn.readObject();// 读取对象return (Student) obj;} catch (Exception e) {e.printStackTrace();} finally {try {// 关闭流objIn.close();in.close();} catch (IOException e) {e.printStackTrace();}}return null;}public static void main(String[] args) {ObjectStreamTest t = new ObjectStreamTest();t.writerObj(new Student(1, "张三", "男"));Student s = t.read();System.out.println(s.getId() + " " + s.getName() + " " + s.getSex());}}
package com;import java.io.Serializable;public class Student implements Serializable {private int id;private String name;private transient String sex;// transient修饰属性的关键字,对象序列化时,该属性的值不作传输public Student() {super();}public Student(int id, String name, String sex) {super();this.id = id;this.name = name;this.sex = sex;}public int getId() {return id;}public void setId(int id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}public String getSex() {return sex;}public void setSex(String sex) {this.sex = sex;}}
- 关于序列化和对象流
- 关于对象序列化
- 关于对象序列化
- 关于序列化:把某个对象序列化成字节流
- 关于复杂对象的序列化和反序列化
- 关于 Java 对象序列化
- java__io__序列流(合并MP3)和对象序列化
- 关于axis1.2中对象的序列化和发序列化
- 关于数据序列化(3),JSON的方式,FastJson序列化对象和List集合示例
- 黑马程序员-----IO之对象流和对象序列化
- 对象序列化和rtti
- 换转流和对象序列化
- 对象copy和序列化
- 对象克隆和对象序列化
- 关于 对象的 序列化问题
- 关于java对象序列化问题
- 关于java的对象序列化
- 关于Java对象序列化的应用~~~
- English notes for Describing People
- 黑马程序员_银行业务调度系统
- 麻省理工学院《算法导论》(MIT - Introduction to Algorithms) 视频教学下载地址
- android控件之Spinner(动态生成下拉内容)
- int与string C++
- 关于序列化和对象流
- Vector remove()和erase()的使用
- Oracle查看表结构的几种方法
- POJ-1679-The Unique MST
- 网站部署之-站点的访问问题
- 功能测试报告
- 如何设置PPT,使演讲者看到备注,而观众看不到(很实用)
- RSS订阅功能二
- 重点---堆和栈