반응형
직렬화
인스턴스 상태를 그대로 저장 or 네트워크로 전송 후에 복원
직렬화 사용을 위해 마크인터페이스 해야 함
implements Serializable
이를테면 파일에 한글자씩 혹은 문자열로 정보를 저장시키는 것이 아니고 인스턴스 자체를 파일에 저장하였다가 인스턴스 채로 뽑아오는 작업
class Person implements Serializable{
String name;
Person(String s) {
this.name = s;
}
}
Person lee = new Person(“김유신”);
Person kim = new Person(“강감찬”);
FileOutputStream fos =new FileOutputStream(“serial.dat”);
한뒤에 바로 Object를 쓸수는 없으므로 보조스트림으로 싸줘야됨
ObjectOutputStream oos = ObjectOutputStream(fos);
oos.write(lee);
oos.write(kim);
FileInputStream fis =new FileInputStream(“serial.dat”);
ObjectInputStream ois = ObjectInputStream(fis);
한뒤에
Person p1 = (Person) ois.readObject();
Person p2 = (Person) ois.readObject();
이렇게 읽어줄 수 있고 각 작업은 예외처리 필수
반응형
'Java' 카테고리의 다른 글
데코레이터 패턴 (0) | 2019.11.08 |
---|---|
RandomAcessFile (0) | 2019.11.08 |
FileInputStream && FileOutputStream (0) | 2019.11.05 |
입출력 스트림 (0) | 2019.11.05 |
자바 연습 (스트림) (0) | 2019.11.04 |