SQLInput

SQLInput (UDT 입력 스트림 인터페이스)

SQL 구조체 타입 또는 SQL distinct 타입의 인스턴스를 나타내는 값의 흐름을 담는 입력 스트림입니다. 이 인터페이스는 커스텀 매핑에만 사용되며 드라이버가 내부적으로 사용하고, 프로그래머가 SQLInput 메서드를 직접 호출하지 않습니다.

출처: Java API Reference

본문

읽기 메서드(readLong, readBytes 등)는 SQLData 인터페이스의 구현이 SQLInput 객체의 값을 읽을 수 있는 방법을 제공합니다. readSQL에서 설명했듯이, 읽기 메서드 호출은 해당 속성이 SQL 타입 정의에 나타나는 순서대로 이루어져야 합니다. wasNull 메서드는 마지막으로 읽은 값이 SQL NULL이었는지 판단합니다.

getObject가 SQLData 인터페이스를 구현하는 클래스의 객체와 함께 호출되면, JDBC 드라이버는 SQLData.getSQLType을 호출해 커스텀 매핑되는 UDT의 SQL 타입을 판단합니다. 드라이버는 SQLInput 인스턴스를 만들어 UDT의 속성들로 채운 뒤, 이 입력 스트림을 SQLData.readSQL에 전달하고, readSQL은 구현에서 SQLInput 읽기 메서드를 호출해 스트림에서 속성을 읽습니다.

대표적인 메서드

String readString() throws SQLException
boolean readBoolean() throws SQLException
int readInt() throws SQLException
long readLong() throws SQLException
Object readObject() throws SQLException
boolean wasNull() throws SQLException
Ref readRef() throws SQLException
Blob readBlob() throws SQLException
Clob readClob() throws SQLException
Array readArray() throws SQLException

더 알아보기 (Learn more)

Java 공식 API