# Business Component Data Types

The following table lists the data types supported by Oracle Business Components for Java. These types are used to map table columns to entity object attributes. In addition, you can use a custom domain as a type.

In version 3.2 of Business Components for Java, interMedia data types — audio, image, and video object types — are supported. Types that were added to this table in version 3.2 are highlighted.

Note that both nested tables and varrays are mapped to oracle.jbo.domain.Array.

Database Column Type | Java Class Name | JDBC Type | JDBC SQL Type ID | Int
NUMBER | oracle.jbo.domain.Number | NUMERIC | NUMBER | 2
TINYINT | oracle.jbo.domain.Number | TINYINT | TINYINT | -6
SMALLINT | oracle.jbo.domain.Number | SMALLINT | SMALLINT | 5
INTEGER | oracle.jbo.domain.Number | INTEGER | INTEGER | 4
BIGINT | oracle.jbo.domain.Number | NUMERIC | NUMERIC | 2
REAL | oracle.jbo.domain.Number | REAL | REAL | 7
DOUBLE | oracle.jbo.domain.Number | DOUBLE | DOUBLE | 8
FLOAT | oracle.jbo.domain.Number | FLOAT | FLOAT | 6
DECIMAL | oracle.jbo.domain.Number | DECIMAL | DECIMAL | 3
NUMERIC | oracle.jbo.domain.Number | NUMERIC | NUMBER | 2
BIT | oracle.jbo.domain.Number | BIT | BIT | -7
NUMBER | java.lang.Boolean | BIT | BIT | -7
VARCHAR2 | java.lang.String | VARCHAR | VARCHAR | 12
NVARCHAR2 | java.lang.String | VARCHAR | VARCHAR | 12
CHAR | java.lang.String | CHAR | CHAR | 1
VARCHAR | java.lang.String | VARCHAR | VARCHAR | 12
LONG | java.lang.String | LONGVARCHAR | LONGVARCHAR | -1
RAW | oracle.jbo.domain.Raw | BINARY | BINARY | -2
RAW | oracle.jbo.domain.Raw | VARBINARY | VARBINARY | -3
RAW | oracle.jbo.domain.Raw | LONGVARBINARY | LONGVARBINARY | -4
LONG RAW | oracle.jbo.domain.Raw | LONGVARBINARY | LONGVARBINARY | -4
CLOB | oracle.jbo.domain.ClobDomain | CLOB | CLOB | 2005
BLOB | oracle.jbo.domain.BlobDomain | BLOB | BLOB | 2004
BFILE | oracle.jbo.domain.BFileDomain | BFILE | BFILE | -13
TIMESTAMP | oracle.jbo.domain.Date | TIMESTAMP | TIMESTAMP | 93
TIME | oracle.jbo.domain.Date | TIMESTAMP | TIME | 92
TIME | oracle.jbo.domain.Date | TIMESTAMP | TIMESTAMP | 93
DATE | oracle.jbo.domain.Date | DATE | DATE | 91
DATE | oracle.jbo.domain.Date | TIMESTAMP | TIMESTAMP | 93
ROWID | oracle.jbo.domain.RowID | VARCHAR | VARCHAR | 12
VARCHAR2 | oracle.jbo.domain.Char | VARCHAR | VARCHAR | 12
NVARCHAR2 | oracle.jbo.domain.Char | VARCHAR | VARCHAR | 12
CHAR | oracle.jbo.domain.Char | CHAR | CHAR | 1
VARCHAR | oracle.jbo.domain.Char | VARCHAR | VARCHAR | 12
LONG | oracle.jbo.domain.Char | LONGVARCHAR | LONGVARCHAR | -1
VARCHAR | java.lang.String | VARCHAR | VARCHAR | 12
NUMBER | java.lang.Integer | NUMERIC | NUMBER | 2
NUMBER | java.math.BigDecimal | NUMERIC | NUMBER | 2
TIMESTAMP | java.sql.Timestamp | TIMESTAMP | TIMESTAMP | 93
DATE | java.sql.Date | DATE | DATE | 91
STRUCT | java.lang.Object | STRUCT | STRUCT | 2002
ORDSYS.ORDIMAGE | oracle.ord.im.OrdImageDomain | STRUCT | STRUCT | 2002
ORDSYS.ORDAUDIO | oracle.ord.im.OrdAudioDomain | STRUCT | STRUCT | 2002
ORDSYS.ORDVIDEO | oracle.ord.im.OrdVideoDomain | STRUCT | STRUCT | 2002
ORDSYS.ORDVIR | oracle.ord.im.OrdVirDomain | STRUCT | STRUCT | 2002
ARRAY | oracle.jbo.domain.Array | ARRAY | ARRAY | 2003
REF | oracle.sql.REF | REF | REF | 2006
STRUCT | java.lang.Object | OTHER | OTHER | 1111