JavaTM Platform
Standard Ed. 6

javax.sql.rowset.serial
클래스 SerialBlob

java.lang.Object 
  상위를 확장 javax.sql.rowset.serial.SerialBlob
모든 구현된 인터페이스:
Serializable , Cloneable , Blob


public class SerialBlob
extends Object
implements Blob , Serializable , Cloneable

Java 프로그램 언어에서의 SQL BLOB 치의 직렬화 매핑입니다.  

SerialBlob 클래스는,Blob 객체로부터 인스턴스를 작성하기 위한 생성자 을 제공합니다. Blob 객체는,SerialBlob 객체를 구축하기 전에, 클라이언트에 SQL BLOB 치의 데이터를 건네줄 필요가 있습니다. SQL BLOB 치의 데이터는, 클라이언트상에서,Blob.getBytes 메소드에 의해 바이트 배열로서 생성됩니다. 또는,Blob.getBinaryStream 메소드에 의해 미해석의 바이트 스트림로서 생성됩니다.  

SerialBlob 메소드는,SerialBlob 객체를 바이트 배열 또는 스트림로서 카피할 수 있습니다. 게다가SerialBlob 객체내에서, 지정된 바이트 패턴이나 Blob 객체를 검색해,Blob 객체를 갱신 또는 절약할 수도 있습니다.

관련 항목:
직렬화 된 형식

생성자 의 개요
SerialBlob (Blob  blob)
          지정된 Blob 객체의 직렬화 된 버젼인 SerialBlob 객체를 구축합니다.
SerialBlob (byte[] b)
          지정된 byte 배열의 직렬화 된 버젼인 SerialBlob 객체를 구축합니다.
 
메소드의 개요
 void free ()
          이 메소드는,Blob 객체를 해제해, 보관 유지되고 있는 자원을 해제합니다.
 InputStream getBinaryStream ()
          이 SerialBlob 객체를 입력 스트림로서 돌려줍니다.
 InputStream getBinaryStream (long pos, long length)
          Blob 치의 일부 (바이트 위치 pos 로부터 길이 length 바이트분 )를 포함한 InputStream 객체를 돌려줍니다.
 byte[] getBytes (long pos, int length)
          이 SerialBlob 객체의 지정의 위치로부터, 지정된 바이트수를 다른 바이트 배열에 카피합니다.
 long length ()
          이 SerialBlob 객체의 바이트 배열의 바이트수를 가져옵니다.
 long position (Blob  pattern, long start)
          이 SerialBlob 객체내에서, 지정의 Blob 객체가 개시되는 위치를 돌려줍니다.
 long position (byte[] pattern, long start)
          이 SerialBlob 객체내에서, 지정된 바이트 패턴이 개시되는 위치를 돌려줍니다.
 OutputStream setBinaryStream (long pos)
          이 BLOB 객체가 나타내는 Blob 치에의 기입해에 사용하는 스트림을 가져옵니다.
 int setBytes (long pos, byte[] bytes)
          이 Blob 객체가 나타내는 BLOB 치에 지정된 바이트 배열을 pos 의 위치로부터 기입해, 기입해진 바이트수를 돌려줍니다.
 int setBytes (long pos, byte[] bytes, int offset, int length)
          이 Blob 객체가 나타내는 BLOB 치에 지정된 byte 배열의 전부 또는 일부를 기입해, 기입해진 바이트수를 돌려줍니다.
 void truncate (long length)
          이 Blob 객체가 나타내는 BLOB 치를 len 바이트의 길이에 절약합니다.
 
클래스 java.lang. Object 로부터 상속된 메소드
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait
 

생성자 의 상세

SerialBlob

public SerialBlob(byte[] b)
           throws SerialException ,
                  SQLException 
지정된 byte 배열의 직렬화 된 버젼인 SerialBlob 객체를 구축합니다.  

새로운 SerialBlob 객체는,byte 배열의 데이터로 초기화됩니다. 이 때문에, 미접속의 RowSet 객체는, 데이터 소스에 손보지 않고 직렬화 된 Blob 객체를 작성할 수 있습니다.

파라미터:
b - 직렬화 되는 Blob 객체의 데이터를 포함하는 byte 배열
예외:
SerialException - 직렬화로 에러가 발생했을 경우
SQLException - SQL 에러가 발생했을 경우

SerialBlob

public SerialBlob(Blob  blob)
           throws SerialException ,
                  SQLException 
지정된 Blob 객체의 직렬화 된 버젼인 SerialBlob 객체를 구축합니다.  

새로운 SerialBlob 객체는,Blob 객체의 데이터로 초기화됩니다. 이 때문에,Blob 객체는, 미리 데이타베이스로부터 클라이언트에 SQL BLOB 치의 데이터를 건네주어 둘 필요가 있습니다. 그렇게 하지 않으면 새로운 SerialBlob 객체는, 데이터를 가지지 않는 객체가 됩니다.

파라미터:
blob - 이 SerialBlob 객체의 구축에 사용되는 Blob 객체. null 이외
예외:
SerialException - 직렬화로 에러가 발생했을 경우
SQLException - 이 생성자 에게 건네진 Blobnull 의 경우
관련 항목:
Blob
메소드의 상세

getBytes

public byte[] getBytes(long pos,
                       int length)
                throws SerialException 
SerialBlob 객체의 지정의 위치로부터, 지정된 바이트수를 다른 바이트 배열에 카피합니다.  

카피되는 바이트수가 이 SerialBlob 객체의 바이트 배열보다 길어지는 경우, 배열의 길이에 맞추어 절약할 수 있습니다.

정의:
인터페이스 Blob 내의 getBytes
파라미터:
pos - 이 SerialBlob 객체내의 카피되는 최초의 바이트의 위치. 1 으로부터 개시되어 1 보다 작은 값은 되지 않는다. 또, 이 SerialBlob 객체의 길이 이하가 아니면 안되는
length - 카피되는 바이트수
반환값:
SerialBlob 객체의 카피 영역이 되는 바이트 배열. 지정 위치로부터 지정의 바이트 몇분 계속된다
예외:
SerialException - 지정된 개시 위치가 범위외에 있는 경우
관련 항목:
Blob.setBytes(long, byte[])

length

public long length()
            throws SerialException 
SerialBlob 객체의 바이트 배열의 바이트수를 가져옵니다.

정의:
인터페이스 Blob 내의 length
반환값:
SerialBlob 객체의 바이트 배열의 바이트수를 나타내는 long
예외:
SerialException - 에러가 발생했을 경우

getBinaryStream

public InputStream  getBinaryStream()
                            throws SerialException 
SerialBlob 객체를 입력 스트림로서 돌려줍니다. 관련 메소드 setBinaryStream 과는 달리,SerialBlobBlob 객체에 의해 작성되었는지, 또는 byte 배열에 의해 작성되었는지를 관계없이, 스트림이 생성됩니다.

정의:
인터페이스 Blob 내의 getBinaryStream
반환값:
SerialBlob 의 바이트 배열을 포함하는 java.io.InputStream 객체
예외:
SerialException - 에러가 발생했을 경우
관련 항목:
setBinaryStream(long)

position

public long position(byte[] pattern,
                     long start)
              throws SerialException ,
                     SQLException 
SerialBlob 객체내에서, 지정된 바이트 패턴이 개시되는 위치를 돌려줍니다. 검색은 지정 위치로부터 개시됩니다.

정의:
인터페이스 Blob 내의 position
파라미터:
pattern - 검색 대상의 바이트 패턴
start - 이 SerialBlob 객체내에서, 검색이 개시되는 바이트의 위치. 최초의 위치는 1. 1 이상 한편 이 SerialBlob 객체의 길이 이하가 아니면 안된다
반환값:
SerialBlob 객체내에서, 지정된 바이트 패턴이 개시되는 위치. 검색은 지정 위치로부터 개시된다. 패턴이 발견되지 않는 경우나 개시 위치가 범위외에 있는 경우는 -1. 반환값의 위치 번호는 1 으로부터 개시된다
예외:
SerialException - blob 의 직렬화중에 에러가 발생했을 경우
SQLException - 데이타베이스로부터 BLOB 치에 액세스 할 경우에 에러가 발생했을 경우

position

public long position(Blob  pattern,
                     long start)
              throws SerialException ,
                     SQLException 
SerialBlob 객체내에서, 지정의 Blob 객체가 개시되는 위치를 돌려줍니다. 검색은 지정 위치로부터 개시됩니다.

정의:
인터페이스 Blob 내의 position
파라미터:
pattern - 검색 대상의 Blob 객체
start - 이 SerialBlob 객체내에서, 검색이 개시되는 바이트의 위치. 최초의 위치는 1. 1 이상 한편 이 SerialBlob 객체의 길이 이하가 아니면 안된다
반환값:
SerialBlob 객체내에서, 지정된 Blob 객체가 개시되는 위치. 검색은 지정 위치로부터 개시된다. 패턴이 발견되지 않는 경우나 개시 위치가 범위외에 있는 경우는 -1. 반환값의 위치 번호는 1 으로부터 개시된다
예외:
SerialException - blob 의 직렬화중에 에러가 발생했을 경우
SQLException - 데이타베이스로부터 BLOB 치에 액세스 할 경우에 에러가 발생했을 경우

setBytes

public int setBytes(long pos,
                    byte[] bytes)
             throws SerialException ,
                    SQLException 
Blob 객체가 나타내는 BLOB 치에 지정된 바이트 배열을 pos 의 위치로부터 기입해, 기입해진 바이트수를 돌려줍니다.

정의:
인터페이스 Blob 내의 setBytes
파라미터:
pos - 기입이 개시되는 SQL BLOB 치의 위치. 최초의 위치는 1. 1 이상 한편 이 SerialBlob 객체의 길이 이하가 아니면 안되는
bytes - 이 Blob 객체가 나타낸다 BLOB 치에 기입해지는 바이트 배열
반환값:
기입해지는 바이트수
예외:
SerialException - BLOB 치에 액세스 할 경우에 에러가 발생했을 경우, 설정된 위치가 무효인 경우, 또는 설정된 오프셋(offset)치가 무효인 경우
SQLException - 데이타베이스로부터 BLOB 치에 액세스 할 경우에 에러가 발생했을 경우
관련 항목:
getBytes(long, int)

setBytes

public int setBytes(long pos,
                    byte[] bytes,
                    int offset,
                    int length)
             throws SerialException ,
                    SQLException 
Blob 객체가 나타내는 BLOB 치에 지정된 byte 배열의 전부 또는 일부를 기입해, 기입해진 바이트수를 돌려줍니다. 기입은,BLOB 치의 pos 의 위치로부터 개시되어 기입처의 지정된 바이트 배열로부터 len 바이트 기입해집니다.

정의:
인터페이스 Blob 내의 setBytes
파라미터:
pos - 기입이 개시되는 BLOB 객체의 위치. 최초의 위치는 1. 1 이상 한편 이 SerialBlob 객체의 길이 이하가 아니면 안되는
bytes - 이 BLOB 치에 기입해지는 바이트 배열 value
offset - 바이트의 read를 개시하는 byte 배열의 오프셋(offset). 최초의 오프셋(offset) 위치는 0. 0 이상 한편 byte 배열의 길이 이하가 아니면 안되는
length - 바이트 배열 bytes 로부터 BLOB 치에 기입해지는 바이트수
반환값:
기입해지는 바이트수
예외:
SerialException - BLOB 치에 액세스 할 경우에 에러가 발생했을 경우, 설정된 위치가 무효인 경우, 설정된 오프셋(offset)치가 무효인 경우, 기입해지는 바이트수가 SerialBlob 의 길이를 넘고 있는 경우, 또는 길이와 오프셋(offset)를 맞춘 값이 Blob 버퍼보다 큰 경우
SQLException - 데이타베이스로부터 BLOB 치에 액세스 할 경우에 에러가 발생했을 경우
관련 항목:
getBytes(long, int)

setBinaryStream

public OutputStream  setBinaryStream(long pos)
                             throws SerialException ,
                                    SQLException 
BLOB 객체가 나타내는 Blob 치에의 기입해에 사용하는 스트림을 가져옵니다. 스트림은 pos 의 위치로부터 개시합니다. 이 메소드는, 이 SerialBlob 객체가 Blob 에 의해 인스턴스화 되고 있는 경우에,setBinaryStream() 을 부하의 Blob 에 전송 합니다. 이 SerialBlobbyte 배열에 의해 인스턴스화 되고 있는 경우는 SerialException 가 throw 됩니다.

정의:
인터페이스 Blob 내의 setBinaryStream
파라미터:
pos - 기입이 개시되는 BLOB 치의 위치
반환값:
데이터가 기입해지는 java.io.OutputStream 객체
예외:
SQLException - BLOB 치에 액세스 할 경우에 에러가 발생했을 경우
SerialException - SerialBlob 가 setBinaryStream() 를 지원하는 Blob 객체에 의해 인스턴스화되어 있지 않은 경우
관련 항목:
getBinaryStream()

truncate

public void truncate(long length)
              throws SerialException 
Blob 객체가 나타내는 BLOB 치를 len 바이트의 길이에 절약합니다.

정의:
인터페이스 Blob 내의 truncate
파라미터:
length - 이 Blob 객체가 나타낸다 BLOB 값을 절약할 수 있는 길이 (바이트 단위)
예외:
SerialException - Blob 치에 액세스 할 경우에 에러가 발생했을 경우, 또는 절약하는 길이가 SerialBlob 의 길이보다 긴 경우

getBinaryStream

public InputStream  getBinaryStream(long pos,
                                   long length)
                            throws SQLException 
Blob 치의 일부 (바이트 위치 pos 로부터 길이 length 바이트분 )를 포함한 InputStream 객체를 돌려줍니다.

정의:
인터페이스 Blob 내의 getBinaryStream
파라미터:
pos - 취득하는 부분치의 최초의 바이트까지의 오프셋(offset). Blob 내에서 최초의 바이트의 위치는 1
length - 취득하는 부분치의 길이 (바이트 단위)
반환값:
Blob 치의 일부를 읽어낼 수 있는 InputStream
예외:
SQLException - pos 가 1 보다 작은 경우, pos 가 Blob 내의 바이트수보다 큰 경우, 또는 pos + length 가 Blob 내의 바이트수보다 큰 경우
도입된 버젼:
1.6

free

public void free()
          throws SQLException 
이 메소드는,Blob 객체를 해제해, 보관 유지되고 있는 자원을 해제합니다. free 메소드가 한 번 불려 간 뒤는, 객체는 무효가 됩니다. free 를 여러 차례 호출했을 경우, 2 번째 이후의 free 호출은 아무것도 실시하지 않는 것으로서 다루어집니다.

정의:
인터페이스 Blob 내의 free
예외:
SQLException - Blob 의 자원을 해제할 경우에 에러가 발생했을 경우
도입된 버젼:
1.6

JavaTM Platform
Standard Ed. 6

버그의 보고와 기능의 요청
한층 더 자세한 API 레퍼런스 및 개발자 문서에 대해서는,Java SE 개발자용 문서를 참조해 주세요. 개발자전용의 상세한 해설, 개념의 개요, 용어의 정의, 버그의 회피책, 및 코드 실례가 포함되어 있습니다.

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.