データベースを照会するインライン・メソッドのターゲット・タイプ: プリミティブ・ラッパー・タイプおよび Object タイプ

SQL SELECT ステートメントがその選択リストで単一の列または式を指定する場合はたいてい、単一の Java プリミティブ・ラッパーまたは単純 Object は、選択されたデータの自然表現です。

ここでの単純 Object タイプは、JDBC により直接サポートされる Java データ・タイプのことです。ただしユーザー定義タイプのみ除外します。

表の個々の列の、Java プリミティブ・ラッパーまたは単純 Object への自然マッピングは、JDBC 標準のデータ・タイプ変換表により指定されたものです。 さらにこれらの表は、データがデータ・ソースから選択されたりそこに挿入されたりする場合の、データ・ソースによりサポートされるデータ・タイプと、Java プリミティブ・ラッパー・タイプおよび単純オブジェクトとの間での許可されるデータ・タイプ変換も指定します。

例えば、単純 Object タイプの java.lang.String を、CHAR データ・タイプで定義される列の、SELECT ステートメントの結果のターゲットとして使用することができます。

プリミティブ・ラッパー・クラス Float を、DECIMAL(5,2) として定義される列の、SELECT ステートメントの結果のターゲットとして使用することができます。

EMP 表から部門のセットを必要とするアプリケーションは、以下のようなコードを使用して、照会を実行し、その照会の結果を String 配列に保管することができます。

Connection con = DriverManager.getConnection(...);
Data db = DataFactory.getData(con);
String[] departmentList = db.queryArray(
 "SELECT DISTINCT WORKDEPT FROM SAMPLE_SCHEMA.EMP",
     String.class );

上記の例は、public <T> T[] queryArray (java.lang.String sql, Class<T> returnClass, Object... parameters) と定義される、汎用メソッド queryArray の呼び出しです。


フィードバック