Hitachi

Hitachi Advanced Database 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>の指定値)

ARRAY

Array

CHAR

String

VARCHAR

STRING

SMALLINT※1

Short

INTEGER※2

Integer

BIGINT

Long

DECIMAL

java.math.BigDecimal

NUMERIC

REAL

Float

DOUBLE PRECISION

Double

FLOAT

DATE

  • java.sql.Date

  • java.time.LocalDate

  • java.time.Instant

TIME

java.sql.Time

TIMESTAMP WITHOUT TIME ZONE

  • java.sql.Timestamp

  • java.time.LocalDateTime

  • java.time.Instant

TIMESTAMP WITH TIME ZONE

  • java.time.OffsetDateTime

  • java.time.LocalDateTime

  • java.time.Instant

  • java.time.ZonedDateTime

BINARY

byte[]

VARBINARY

ROW

BOOLEAN

Boolean

UUID

java.util.UUID

注※1

整数データ型のデータ形式がレガシー形式の場合は,Javaデータ型はIntegerとなります。

注※2

整数データ型のデータ形式がレガシー形式の場合は,Javaデータ型はLongとなります。

(4) 戻り値

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

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

HADBのデータ型

検索結果

戻り値

ARRAY

ナル値

null

上記以外

検索結果を格納したArrayオブジェクト

CHAR

VARCHAR

STRING

ナル値

null

上記以外

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

SMALLINT※2

ナル値

null

上記以外

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

INTEGER※3

ナル値

null

上記以外

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

BIGINT

ナル値

null

上記以外

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

DECIMAL

NUMERIC

ナル値

null

上記以外

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

REAL

ナル値

null

上記以外

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

DOUBLE PRECISION

FLOAT

ナル値

null

上記以外

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

DATE

ナル値

null

上記以外

検索結果で生成したtypeに指定したクラスのオブジェクト

TIME

ナル値

null

上記以外

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

TIMESTAMP WITHOUT TIME ZONE

ナル値

null

上記以外

検索結果で生成したtypeに指定したクラスのオブジェクト

TIMESTAMP WITH TIME ZONE

ナル値

null

上記以外

検索結果で生成したtypeに指定したクラスのオブジェクト

BINARY

VARBINARY

ナル値

null

上記以外

検索結果

UUID

ナル値

null

上記以外

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

ROW

ナル値以外※1

検索結果

BOOLEAN

ナル値

null

上記以外

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

注※1

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

注※2

整数データ型のデータ形式がレガシー形式の場合は,Integerオブジェクトが返却されます。

注※3

整数データ型のデータ形式がレガシー形式の場合は,Longオブジェクトが返却されます。

(5) 発生する例外

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