Development/Java(855)
-
ObjectOutputStream (인스턴스 저장), 파일에 객체를 저장(직렬화)하는 경우
ObjectOutputStream (인스턴스 저장) · ObjectOutput 인터페이스를 구현한 클래스로 객체를 파일에 기록 할수 있는 클래스입니다. · 바이트출력 스트림과 연결되어 객체를 직렬화합니다. · ObjectOutput 인터페이스는 writeObject(Object obj) 메서드를 포함하고 있는데 이 메서드가 객체의 데이터를 직렬화 시켜주는 메서드(직렬화 메서드)입니다. · 만약 obj가 Serializable 인터페이스로 구현되어 있지 않다면 NotSerializableException 예외가 발생합니다. · 직렬화된 데이터를 저장하는 파일 확장자는 serialization의 약자인 ".ser"로 설정하는것이 관례입니다. //object.ser파일에 저장하는 출력스트림(FileOutput..
-
Object Stream(오브젝트 스트림)
Object Stream(오브젝트 스트림)· 생성된 객체를 파일 또는 네트워크로 출력할 수 있으며 객체는 문자가 아니기 때문에 바이트 기반 스트림으로 출력해야 합니다.· 객체를 직렬화 하고 다시 역직렬화 시킬 수 있는 클래스는 ObjectInputStream과 ObjectOutputStream 클래스입니다.· ObjectInputStream과 ObjectOutputStream 클래스는 각각 InputStream과 OutputStream을 상속받지만 기반 스트림을 필요로 하는 보조 스트림입니다. 그래서 객체를 생성할 때 입출력(직렬화/역직렬화)할 스트림을 지정해 주어야 합니다. Object Stream 생성자연결할 바이트 입출력스트림을 생성자의 매개변수의 값으로 받아서 생성됩니다.
-
문자열 기반 보조 스트림
문자열 기반 보조 스트림
-
Object Stream 주요 메소드, 직렬화 속도
Object Stream 주요 메소드직렬화와 역직력화를 직접 구현할 때 주로 사용되어 집니다.defaultReadObject()와 defaultWriteObject()는 자동 직렬화를 수행합니다.객체를 직력화/역직렬화하는 작업은 객체의 모든 인스턴스 변수가 참조하고 있는 모든 객체에 대한 것이기 때문에 상당히 복잡하고 시간이 오래 걸리는 작업입니다. 메소드 설명 readObject() 입력스트림에서 읽은 바이트를 역직렬화해서 객체를 생성합니다. 리턴타입이 Object타입이기 때문에 객체의 원래 타입으로 형변환해 주어야 합니다. writeObject() 객체를 직렬화합니다.
-
문자열 입력 / 출력 메소드, 문자열 입출력 스트림 구성
문자열 입력 / 출력 메소드
-
BufferedOutputStream, BufferedOutputStream의 주요 생성자, BufferedOutputStream의 주요 메소드
BufferedOutputStream· BufferedOutputStream 클래스를 사용하면 버퍼가 채워질 때마다 한번에 대량으로 출력장치로의 실제 전송이 수행됩니다.· OutputStream은 출력 속도의 향상을 위해서 flush() 메서드를 정의하고 있습니다.· flush(플러쉬)란 버퍼가 다 차지 않더라도 버퍼를 비워주는 기능입니다.· 플러쉬 기능을 구현한 클래스가 바로 BufferedOutputStream 클래스입니다. BufferedOutputStream의 주요 생성자 메소드 설명 void flush() 버퍼링 된 출력 Stream을 플래시 합니다. void write(byte[] b, int off, int len) 지정된 바이트 배열의 오프셋 off 로부터 시작되는 len 바이트를, 버퍼링..