Package nablarch.core.db.statement
Class SqlRow
簡易取得結果1行分のデータを保持するクラス。
各カラムの内容は、そのデータ型に対応したgetメソッドにより取得できる。
この際、カラム名の大文字/小文字の違い、アンダースコアの有無は区別せず、
同一のカラム名とみなされる。
例:
- USER_NAMEとuser_nameは同一のカラム名とみなされる。(大文字小文字の区別はしないため)
- USER_NAMEとuserNameは同一のカラム名とみなされる。(アンダースコアの有無は区別しないため)
- Author:
- Hisaaki Sioiri
-
Nested Class Summary
Nested classes/interfaces inherited from class java.util.AbstractMap
AbstractMap.SimpleEntry<K extends Object,V extends Object>, AbstractMap.SimpleImmutableEntry<K extends Object, V extends Object> -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionfinal BigDecimalgetBigDecimal(String colName) 指定されたカラムの情報をBigDecimalとして取得する。getBoolean(String colName) 指定されたカラムの情報をBooleanとして取得する。byte[]指定されたカラムの情報をbyte配列として取得する。protected intgetColType(String colName) 指定されたカラム名のカラムタイプ(Types)を取得する。指定されたカラムの情報をDateとして取得する。final IntegergetInteger(String colName) 指定されたカラムの情報をIntegerとして取得する。final Long指定されたカラムの情報をLongとして取得する。final String指定されたカラムの情報を文字列で取得する。getTimestamp(String colName) 指定されたカラムの情報をTimestampとして取得する。Methods inherited from class nablarch.core.util.map.MultipleKeyCaseMap
addKeyConversion, containsKey, copyValueOf, get, getActualDataKey, getDelegateMap, put, putAllMethods inherited from class nablarch.core.util.map.MapWrapper
clear, containsValue, entrySet, equals, getDelegateMapOfType, hashCode, isEmpty, keySet, remove, size, toString, valuesMethods inherited from class java.util.AbstractMap
cloneMethods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface java.util.Map
compute, computeIfAbsent, computeIfPresent, forEach, getOrDefault, merge, putIfAbsent, remove, replace, replace, replaceAll
-
Constructor Details
-
SqlRow
指定されたMapを元にオブジェクトを構築する。- Parameters:
row- 1行分のデータを持つMapcolType- カラムタイプ
-
SqlRow
指定されたMapを元にオブジェクトを構築する。- Parameters:
row- 1行分のデータを持つMapcolType- カラムタイプignored- カラム名の紐付け情報(本引数は使用しない)
-
SqlRow
コピー元となるSqlRowからオブジェクトを構築する。- Parameters:
orig- コピー元となるインスタンス
-
-
Method Details
-
getString
指定されたカラムの情報を文字列で取得する。- Parameters:
colName- カラム名- Returns:
- 指定されたカラム名に対応するString型データ(toString()した結果を返却する)。
データベースの検索結果が
nullの場合には、nullを返却する - Throws:
IllegalArgumentException- 指定されたカラム名が存在しない場合
-
getInteger
指定されたカラムの情報をIntegerとして取得する。 データベースから取得したデータがInteger型である場合、その値をそのまま返却する。
それ以外の型の場合、そのデータの文字列表現(toString()した結果)を、Integer.valueOf(String)を使用してInteger型に変換し返却する。 データベースから取得したデータがどのような文字列表現を返却するかは、 使用するRDBMSのJDBCドライバに依存する。 以下に例を示す。| 文字列表現 | 結果 | |------------+-----------------------| | "1" | 1 | | "-1" | -1 | |"2147483648"| NumberFormatException | | "1.0" | NumberFormatException | | "ABC" | NumberFormatException |
- Parameters:
colName- カラム名- Returns:
- 指定されたカラム名に対応するInteger型データ。
データベースの検索結果が
nullの場合には、nullを返却する - Throws:
NumberFormatException- データベースから取得したデータの文字列表現が、Integer型として解釈できない場合IllegalArgumentException- 指定されたカラム名が存在しない場合
-
getLong
指定されたカラムの情報をLongとして取得する。 データベースから取得したデータがLong型である場合、その値をそのまま返却する。
それ以外の型の場合、そのデータの文字列表現(toString()した結果)を、Long.valueOf(String)を使用してLong型に変換し返却する。 データベースから取得したデータがどのような文字列表現を返却するかは、 使用するRDBMSのJDBCドライバに依存する。 以下に例を示す。| 文字列表現 | 結果 | |------------+-----------------------| | "1" | 1 | | "-1" | -1 | |"2147483648"| 2147483648 | | "1.0" | NumberFormatException | | "ABC" | NumberFormatException |
- Parameters:
colName- カラム名- Returns:
- 指定されたカラム名に対応するLong型データ。
データベースの検索結果が
nullの場合には、nullを返却する - Throws:
NumberFormatException- データベースから取得したデータの文字列表現が、Long型として解釈できない場合IllegalArgumentException- 指定されたカラム名が存在しない場合
-
getBoolean
指定されたカラムの情報をBooleanとして取得する。 以下の値の場合、Boolean.TRUEを返却し、それ以外は全てBoolean.FALSEを返却する。- booleanの
trueの場合 Stringの場合で"1" or "on" or "true"の場合(大文字、小文字の区別はしない)- 数値型で0以外の場合
IllegalStateExceptionを送出する。- Parameters:
colName- カラム名- Returns:
trueorfalseを返却する。 データベースの検索結果がnullの場合には、nullを返却する- Throws:
IllegalArgumentException- 指定されたカラム名が存在しない場合
- booleanの
-
getBigDecimal
指定されたカラムの情報をBigDecimalとして取得する。- Parameters:
colName- カラム名- Returns:
- 指定されたカラム名に対応するBigDecimal型データ。
データベースの検索結果が
nullの場合には、nullを返却する - Throws:
NumberFormatException- データベースから取得したデータの文字列表現(toString()した結果)が、BigDecimal型として解釈できない場合IllegalArgumentException- 指定されたカラム名が存在しない場合
-
getDate
指定されたカラムの情報をDateとして取得する。 データベースから取得したデータのデータタイプが下記のデータの場合、java.util.Dateとして取得する 下記に該当しない場合は、IllegalStateExceptionを送出する。
- Parameters:
colName- カラム名- Returns:
- 指定されたカラム名に対応するjava.util.Date型データ。
データベースの検索結果が
nullの場合には、nullを返却する - Throws:
IllegalArgumentException- 指定されたカラム名が存在しない場合
-
getTimestamp
指定されたカラムの情報をTimestampとして取得する。 データベースから取得したデータのデータタイプが下記のデータの場合、Timestampとして取得する。 下記に該当しない場合は、IllegalStateExceptionを送出する。
- Parameters:
colName- カラム名- Returns:
- 指定されたカラム名に対応するjava.sql.Timestamp型データ
- Throws:
IllegalArgumentException- 指定されたカラム名が存在しない場合
-
getBytes
指定されたカラムの情報をbyte配列として取得する。 データベースから取得したデータのデータタイプが下記のデータの場合、byte配列として取得する。
下記に該当しない場合は、IllegalStateExceptionを送出する。- Parameters:
colName- カラム名- Returns:
- 指定されたカラム名に対応するbyte配列データ。
データベースの検索結果が
nullの場合には、nullを返却する - Throws:
IllegalArgumentException- 指定されたカラム名が存在しない場合DbAccessException- データタイプがBLOB型である場合で、データの読み込みに失敗した場合
-
getColType
指定されたカラム名のカラムタイプ(Types)を取得する。- Parameters:
colName- カラム名- Returns:
- カラムタイプ
-