关键字:Serializable
1、创建一个Employee类,实现接口Serializable
package com.lzq.server; import java.io.Serializable; public class Employee implements Serializable { public static final long serialVersionUID = 1L; private String serialName; private transient int noSerialSalary; public String getSerialName() { return serialName; } public void setSerialName(String serialName) { this.serialName = serialName; } public int getNoSerialSalary() { return noSerialSalary; } public void setNoSerialSalary(int noSerialSalary) { this.noSerialSalary = noSerialSalary; } @Override public String toString() { return "Employee{" + "serialName='" + serialName + '\'' + '}'; } }
2、序列化类
package com.lzq.server; import com.sun.corba.se.impl.io.OutputStreamHook; import java.io.FileOutputStream; import java.io.IOException; import java.io.ObjectOutputStream; public class SerialObject { public static void main(String[] args) { Employee employee = null; FileOutputStream fs = null; ObjectOutputStream os = null; employee = new Employee(); employee.setSerialName("kelly"); employee.setNoSerialSalary(10000); try { fs = new FileOutputStream("Employee.ser"); os = new ObjectOutputStream(fs); os.writeObject(employee); System.out.println("Employee output "); os.close(); fs.close(); }catch (IOException e){ e.printStackTrace(); } } }
3、反序列化类
package com.lzq.server; import java.io.FileInputStream; import java.io.IOException; import java.io.ObjectInputStream; public class DeSerialObject { public static void main(String[] args) { Employee employee = null; FileInputStream fi = null; ObjectInputStream oi = null; try { fi = new FileInputStream("Employee.ser"); oi = new ObjectInputStream(fi); employee = (Employee)oi.readObject(); System.out.println(employee.getSerialName()); System.out.println(employee.getNoSerialSalary()); oi.close(); fi.close(); }catch (Exception e){ e.printStackTrace(); } } }