摘要:如果您想要通过网络发送对象,那么您需要将对象写入文件并将其转换成溪流。这个过程可以被称为序列化。对象需要实现Serializable接口,它是标记接口接口,我们将使用java.io。ObjectOutputStream将对象写入文件。

1.Employee.java

package cn.micai.io;

import java.io.Serializable;

/**
* 描述:
* <p>
*
* @author: 赵新国
* @date: 2018/6/7 12:10
*/
public class Employee implements Serializable {

private static final long serialVersionUID = 1L;
int employeeId;
String employeeName;
String department;

public int getEmployeeId() {
return employeeId;
}
public void setEmployeeId(int employeeId) {
this.employeeId = employeeId;
}
public String getEmployeeName() {
return employeeName;
}
public void setEmployeeName(String employeeName) {
this.employeeName = employeeName;
}
public String getDepartment() {
return department;
}
public void setDepartment(String department) {
this.department = department;
}
}

正如您在上面看到的,如果您想要序列化任何类,那么它必须实现Serializable接口,这是标记接口。Java中的标记接口是没有字段或方法的接口,或者在Java中简单的word空接口称为标记接口

2.SerializeMain.java

package cn.micai.io;

import java.io.FileOutputStream;
import java.io.ObjectOutputStream;

/**
* 描述:
* <p>
*
* @author: 赵新国
* @date: 2018/6/7 12:10
*/
public class SerializeMain {

public static void main(String [] args) {

Employee emp = new Employee();
emp.setEmployeeId(101);
emp.setEmployeeName("Arpit");
emp.setDepartment("CS");

try {
FileOutputStream fileOutputStream = new FileOutputStream("D://employee.ser");
ObjectOutputStream objectOutputStream = new ObjectOutputStream(fileOutputStream);
objectOutputStream.writeObject(emp);
objectOutputStream.close();
fileOutputStream.close();
} catch (Exception e) {
e.printStackTrace();
}

}
}

当你运行程序时,员工。ser会得到创建。它的内容不会以人类可读的格式,但它会将对象存储在文件中。您可以使用ObjectInputStream从文件中读取相同的对象。