Cosminexus 機能解説
Cosminexusで提供するEJBコンテナのCMP機能でのEntity BeanのJavaデータ型とデータベースのSQLデータ型の対応について説明します。
EJBコンテナのEntity BeanのCMPでサポートするJavaデータ型の範囲と,プライマリキーへの指定の可否を次の表に示します。
表5-14 CMPでサポートするJavaデータ型の範囲
Javaデータ型 | 値の範囲 | プライマリキーへの指定 |
---|---|---|
boolean | true,false | × |
java.lang.Boolean | ○ | |
byte | -128〜127 | × |
java.lang.Byte | ○ | |
char | '\u0000'〜'\uffff'(0〜65535) | × |
java.lang.Character | ○ | |
short | -32768〜32767 | × |
java.lang.Short | ○ | |
int | -2147483648〜2147483647 | × |
java.lang.Integer | ○ | |
long | -9223372036854775808〜9223372036854775807 | × |
java.lang.Long | ○ | |
float※ | ±1.40239846e-45〜±3.40282347e+38 | × |
java.lang.Float※ | ○ | |
double※ | ±4.94065645841246544e-324〜±1.79769313486231570e+308 | × |
java.lang.Double※ | ○ | |
byte[] | 1Byte〜2147483647Byte | × |
java.lang.String | − | ○ |
java.math.BigDecimal | − | × |
java.sql.Date | − | × |
java.sql.Time | 00:00:00〜23:59:59 | × |
java.sql.TimeStamp | − | × |
Serializableな型 | − | × |
EJBコンテナのEntity BeanのCMPでのフィールドとデータベースのマッピングを次の表に示します。
なお,表中の「Javaデータ型」はCMPがサポートするJavaのデータ型,「JDBCデータ型」はJavaのデータ型に対応するJDBCのjava.sql.Types.のデータ型,「SQLデータ型」はJavaデータ型とのマッピングで推奨するDBカラムの型となります。
表5-15 CMPでのフィールドとデータベースのマッピング(HiRDB使用時)
Javaデータ型 | JDBCデータ型 | SQLデータ型 |
---|---|---|
boolean | SMALLINT | SMALLINT |
java.lang.Boolean | ||
byte | SMALLINT | SMALLINT |
java.lang.Byte | ||
char※1 | CHAR | CHAR(4) |
java.lang.Character※1 | ||
short | SMALLINT | SMALLINT |
java.lang.Short | ||
int | INTEGER | INTEGER |
java.lang.Integer | ||
long | DECIMAL | DECIMAL(22) |
java.lang.Long | ||
float | REAL | REAL,SMALLFLT |
java.lang.Float | ||
double | FLOAT | DOUBLE PRECISION |
java.lang.Double | ||
byte[]※2 | LONGVARBINARY | BLOB |
java.lang.String※1 | VARCHAR | VARCHAR(m) CHAR(n) MVARCHAR(m) MCHAR(n) NVARCHAR(x) NCHAR(y)※3 |
java.math.BigDecimal | DECIMAL | DECIMAL(m,n)※4 |
java.sql.Date | DATE | DATE※5 |
java.sql.Time | TIME | TIME |
java.sql.TimeStamp※6 | CHAR | CHAR(29) |
Serializableな型※2 | LONGVARBINARY | BLOB |
EJBコンテナのEntity BeanのCMPでのフィールドとデータベースのマッピングを次の表に示します。
なお,表中の「Javaデータ型」はCMPがサポートするJavaのデータ型,「JDBCデータ型」はJavaのデータ型に対応するJDBCのjava.sql.Types.のデータ型,「SQLデータ型」はJavaデータ型とのマッピングで推奨するDBカラムの型となります。
表5-16 CMPでのフィールドとデータベースのマッピング(Oracle使用時)
Javaデータ型 | JDBCデータ型 | SQLデータ型 |
---|---|---|
boolean | NUMERIC | NUMBER(38) |
java.lang.Boolean | ||
byte | NUMERIC | NUMBER(38) |
java.lang.Byte | ||
char※1 | CHAR | CHAR(4) |
java.lang.Character※1 | ||
short | NUMERIC | NUMBER(38) |
java.lang.Short | ||
int | NUMERIC | NUMBER(38) |
java.lang.Integer | ||
long | NUMERIC | NUMBER(22) |
java.lang.Long | ||
float | NUMERIC | NUMBER |
java.lang.Float | ||
double※2 | FLOAT | FLOAT(126) |
java.lang.Double※2 | ||
byte[]※3 | LONGVARBINARY | LONG RAW |
java.lang.String※1 | VARCHAR | VARCHAR(m) CHAR(n) LONG※4 |
java.math.BigDecimal | NUMERIC | NUMBER(m,n)※5 |
java.sql.Date | DATE | DATE※6 ※7 |
java.sql.Time | CHAR | CHAR(8)※8 |
java.sql.TimeStamp | TimeStamp | DATE※7 ※9 |
Serializableな型※3 | LONGVARBINARY | LONG RAW |
All Rights Reserved. Copyright (C) 2006, 2007, Hitachi, Ltd.