Hitachi

Hitachi Advanced Data Binder AP開発ガイド


8.6.45 getObject(int columnIndex,Class<T> type)

〈この項の構成〉

(1) 機能

ResultSetオブジェクトの現在行の列の値を取得し,指定されたクラスのJavaデータ型に変換します。値を取得する列は,引数で指定します。

(2) 形式

public synchronized <T> T getObject(int columnIndex,Class<T> type) throws SQLException

(3) 引数

int columnIndex

列番号を指定します。

Class<T> type

変換後のJavaデータ型を表すクラスを指定します。columnIndexで指定した列の値が,指定されたクラスのJavaデータ型に変換されます。

変換の組み合わせを次の表に示します。次の表に示す組み合わせ以外を指定した場合は,エラーになります。

表8‒37 HADBのデータ型とJavaデータ型の組み合わせ

HADBのデータ型

Javaデータ型(<T>の指定値)

CHAR

String

VARCHAR

SMALLINT

Integer

INTEGER

Long

DECIMAL

java.math.BigDecimal

NUMERIC

DOUBLE PRECISION

Double

FLOAT

DATE

java.sql.Date

TIME

java.sql.Time

TIMESTAMP

java.sql.Timestamp

BINARY

byte[]

VARBINARY

ROW

BOOLEAN

Boolean

注※

DatabaseMetadataから生成されたResultsetオブジェクトの場合は,BOOLEAN型データが存在します。

(4) 戻り値

列の値が,「指定されたクラスのオブジェクト」として返却されます。検索結果と戻り値の関係を次の表に示します。

表8‒38 検索結果と戻り値の関係(getObjectメソッドの場合)

HADBのデータ型

検索結果

戻り値

CHAR

VARCHAR

ナル値

null

上記以外

検索結果で生成したStringオブジェクト

SMALLINT

ナル値

null

上記以外

検索結果で生成したIntegerオブジェクト

INTEGER

ナル値

null

上記以外

検索結果で生成したLongオブジェクト

DECIMAL

NUMERIC

ナル値

null

上記以外

検索結果で生成したjava.math.BigDecimalオブジェクト

DOUBLE PRECISION

FLOAT

ナル値

null

上記以外

検索結果で生成したDoubleオブジェクト

DATE

ナル値

null

上記以外

検索結果で生成したjava.sql.Dateオブジェクト

TIME

ナル値

null

上記以外

検索結果で生成したjava.sql.Timeオブジェクト

TIMESTAMP

ナル値

null

上記以外

検索結果で生成したjava.sql.Timestampオブジェクト

BINARY

VARBINARY

ナル値

null

上記以外

検索結果

ROW

ナル値以外※1

検索結果

BOOLEAN※2

ナル値

null

上記以外

検索結果で生成したBooleanオブジェクト

注※1

検索結果がナル値になることはありません。

注※2

DatabaseMetadataから生成されたResultsetオブジェクトの場合は,BOOLEAN型データが存在します。

(5) 発生する例外

次に示す場合にSQLExceptionが投入されます。