ヘッダーをスキップ

フィールドへの直接マッピングの使用

フィールドへの直接マッピングはJava属性を直接、値のデータベース列にマップします。アプリケーションがJavaインスタンスをデータベースに書き込む際、表列のフィールドにその属性の値を格納します。TopLinkは次の型をサポートします。

読取りの際、表5-1に示されているとおり、フィールドへの直接マッピングは単純な1つのデータ変換を実行します。2方向以上の完全な変換については他の直接マッピングを使用する必要があります。

表5-1 フィールドへの直接マッピングで提供されるタイプ変換

Java型 データベース・タイプ
Integer、Float、Double、Byte、Short、BigDecimal、BigInteger、int、float、double、byte、short NUMBER、NUMERIC、DECIMAL、FLOAT、DOUBLE、INT、SMALLINT、BIT、BOOLEAN
Boolean、boolean BOOLEAN、BIT、SMALLINT、NUMBER、NUMERIC、DECIMAL、FLOAT、DOUBLE、INT
String VARCHAR、CHAR、VARCHAR2、CLOB、TEXT、LONG、LONG VARCHAR、MEMO
nSting NVARCHAR2(Oracle9に適用)
nClob NCLOB(Oracle9に適用)
Character、char CHAR
nCharacter NCHAR(Oracle9に適用)
byte[ ] BLOB、LONG RAW、IMAGE、RAW、VARBINARY、BINARY、LONG VARBINARY
Time TIME
sql.Date DATE(DB2のみに適用)
Timestamp、util.Date、Calendar TIMESTAMP(DB2のみに適用)
sql.Date、Time、Timestamp、util.Date、Calendar DATE、DATETIME(Oracle、Sybase、SQL Serverに適用)

フィールドへのダイレクト・マッピングでは、NULL値も指定可能です。オブジェクトでプリミティブ・タイプが使用されており、データベース・フィールドでNULL値を使用できる場合、NULL値を指定する必要がある場合があります。

例5-5 フィールドへの直接マッピングの例

図5-10には、Java属性cityとリレーショナル・データベース列CITYの間のフィールドへの直接マッピングが示されています。同様に、countryからCOUNTRYidからADDRESS_IDestablishedからEST_DATEprovinceからPROVINCEなどのフィールドへの直接マッピングを定義できます。

図5-10 フィールドへの直接マッピング

フィールドへの直接マッピング


関連トピック

TopLinkマッピング・タイプについて
直接マッピングの使用

 

Javaオブジェクトのフィールドへの直接マッピングの作成
CMP EJBのフィールドへの直接マッピングの作成