티스토리 뷰
728x90
- 객체를 주고받기 위해 직렬화 시키고 직렬화를 위해서 Serializable을 implements 하는 것
public class ObjectStreamSampleData implements Serializable {
public String str;
public int id;
public ObjectStreamSampleData(String str, int id) {
this.str = str;
this.id = id;
}
public String getObjectStreamSampleData(){
return id + "=" + str;
}
}
public class ObjectStreamHandle {
public static void main(String\[\] args) throws Exception {
FileOutputStream fos = new FileOutputStream("d:/serial.dat");
ObjectOutputStream oos = new ObjectOutputStream(fos);
ObjectStreamSampleData s1 = new ObjectStreamSampleData("홍길동", 1004);
ObjectStreamSampleData s2 = new ObjectStreamSampleData("김삿갓", 1005);
oos.writeObject(s1);
oos.writeObject(s2);
oos.close();
System.out.println(s1 + ":" + s1.getObjectStreamSampleData());
System.out.println(s2 + ":" + s2.getObjectStreamSampleData());
FileInputStream fis = new FileInputStream("d:/serial.dat");
ObjectInputStream ois = new ObjectInputStream(fis);
ObjectStreamSampleData sd1 = (ObjectStreamSampleData)ois.readObject();
ObjectStreamSampleData sd2 = (ObjectStreamSampleData)ois.readObject();
ois.close();
System.out.println(sd1 + ":" + sd1.getObjectStreamSampleData());
System.out.println(sd2 + ":" + sd2.getObjectStreamSampleData());
}
}
객체를 만들어서 이것을 ObjectOutputStream을 통해 파일로 쓰고 이 파일로 부터 읽어 들여온다.
'Java' 카테고리의 다른 글
[java] already loaded in another classloader 에러 해결 방법 (0) | 2021.06.29 |
---|
댓글