8.12.5 エンティティの永続化フィールドおよび永続プロパティの型
エンティティの永続化フィールド/永続化プロパティは,次に示す型にしてください。
-
Javaのプリミティブ型
-
java.lang.String
-
ほかのシリアライズ型
-
プリミティブ型のラッパークラス
-
java.math.BigInteger
-
java.math.BigDecimal
-
java.util.Date
-
java.util.Calendar
-
java.sql.Date
-
java.sql.Time
-
java.sql.Timestamp
-
ユーザが定義するシリアライズな型
-
byte[]
-
Byte[]
-
char[]
-
Character[]
-
enum
-
エンティティタイプとエンティティタイプで複製できるコレクション
-
埋め込みできるクラス
CJPAプロバイダを使用する場合は,上記以外の型が指定されたときの動作は保証しません。アプリケーションの実行時に例外が発生するおそれもあります。
ただし,CJPAプロバイダを使用している場合,エンティティのインスタンス変数の型は,データベースのカラムの型と対応づけしている必要があります。Javaの型とデータベースの型の対応づけは,JDBCドライバが行います。CJPAプロバイダでは,Oracle接続時にはOracleが提供するOracle JDBC Thin DriverをJDBCドライバとして利用します。HiRDB接続時にはHiRDB Type4 JDBC DriverをJDBCドライバとして利用します。ユーザはJDBCドライバがサポートする型の変換に合わせてエンティティのインスタンス変数の型を決定してください。