Package org.apache.cayenne.dba
Class TypesMapping
java.lang.Object
org.apache.cayenne.dba.TypesMapping
A utility class that handles mappings of JDBC data types to the database
types and Java types. Also contains methods that provide information about
JDBC types.
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final int
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic String[]
Returns an array of string names of the default JDBC data types.static String
getJavaBySqlType
(int type) Get the corresponding Java type by itsTypes
counterpart.static String
getJavaBySqlType
(DbAttribute attribute) static String
getSqlNameByType
(int type) Returns a String representation of the SQL type from its JDBC code.static int
getSqlTypeByJava
(Class<?> javaClass) Guesses a default JDBC type for the Java class.static int
getSqlTypeByJava
(String className) Returns default java.sql.Types type by the Java type name.static int
getSqlTypeByName
(String typeName) Returns a JDBC int type for SQL typem name.static boolean
isBinary
(int type) Returns true if supplied type is a binary type.static boolean
isCharacter
(int type) Returns true if supplied type is a character type.static boolean
isDecimal
(int type) Returns true if supplied type is a decimal type.static boolean
isNumeric
(int type) Returns true if supplied type is a numeric type.protected static String
pickDataType
(int jdbcType, org.apache.cayenne.dba.TypesMapping.TypeInfo[] alts) Method implements an algorithm to pick a data type from a list of alternatives that most closely matches JDBC data type.static boolean
supportsLength
(int type) Deprecated.Returns true if supplied type can have a length attribute as a part of column definition.
-
Field Details
-
NOT_DEFINED
public static final int NOT_DEFINED- See Also:
-
SQL_ARRAY
- See Also:
-
SQL_BIGINT
- See Also:
-
SQL_BINARY
- See Also:
-
SQL_BIT
- See Also:
-
SQL_BLOB
- See Also:
-
SQL_BOOLEAN
- Since:
- 1.2
- See Also:
-
SQL_CLOB
- See Also:
-
SQL_NCLOB
- See Also:
-
SQL_CHAR
- See Also:
-
SQL_NCHAR
- See Also:
-
SQL_DATE
- See Also:
-
SQL_DECIMAL
- See Also:
-
SQL_DOUBLE
- See Also:
-
SQL_FLOAT
- See Also:
-
SQL_INTEGER
- See Also:
-
SQL_LONGVARCHAR
- See Also:
-
SQL_LONGNVARCHAR
- See Also:
-
SQL_LONGVARBINARY
- See Also:
-
SQL_NUMERIC
- See Also:
-
SQL_REAL
- See Also:
-
SQL_SMALLINT
- See Also:
-
SQL_TINYINT
- See Also:
-
SQL_TIME
- See Also:
-
SQL_TIMESTAMP
- See Also:
-
SQL_VARBINARY
- See Also:
-
SQL_VARCHAR
- See Also:
-
SQL_NVARCHAR
- See Also:
-
SQL_SQLXML
- See Also:
-
SQL_OTHER
- See Also:
-
SQL_NULL
- See Also:
-
JAVA_LONG
- See Also:
-
JAVA_BYTES
- See Also:
-
JAVA_BOOLEAN
- See Also:
-
JAVA_STRING
- See Also:
-
JAVA_SQLDATE
- See Also:
-
JAVA_UTILDATE
- See Also:
-
JAVA_BIGDECIMAL
- See Also:
-
JAVA_BIGINTEGER
- See Also:
-
JAVA_DOUBLE
- See Also:
-
JAVA_FLOAT
- See Also:
-
JAVA_INTEGER
- See Also:
-
JAVA_SHORT
- See Also:
-
JAVA_BYTE
- See Also:
-
JAVA_TIME
- See Also:
-
JAVA_TIMESTAMP
- See Also:
-
JAVA_BLOB
- See Also:
-
-
Constructor Details
-
TypesMapping
- Throws:
SQLException
-
-
Method Details
-
supportsLength
public static boolean supportsLength(int type) Deprecated.Returns true if supplied type can have a length attribute as a part of column definition. -
isCharacter
public static boolean isCharacter(int type) Returns true if supplied type is a character type.- Parameters:
type
- JDBC type- Returns:
- true if supplied type is a character type.
- Since:
- 4.0
-
isBinary
public static boolean isBinary(int type) Returns true if supplied type is a binary type.- Parameters:
type
- JDBC type- Returns:
- true if supplied type is a binary type.
- Since:
- 4.0
-
isNumeric
public static boolean isNumeric(int type) Returns true if supplied type is a numeric type. -
isDecimal
public static boolean isDecimal(int type) Returns true if supplied type is a decimal type. -
getDatabaseTypes
Returns an array of string names of the default JDBC data types. -
pickDataType
protected static String pickDataType(int jdbcType, org.apache.cayenne.dba.TypesMapping.TypeInfo[] alts) Method implements an algorithm to pick a data type from a list of alternatives that most closely matches JDBC data type. -
getSqlTypeByName
Returns a JDBC int type for SQL typem name. -
getSqlNameByType
Returns a String representation of the SQL type from its JDBC code. -
getSqlTypeByJava
Returns default java.sql.Types type by the Java type name.- Parameters:
className
- Fully qualified Java Class name.- Returns:
- The SQL type or NOT_DEFINED if no type found.
-
getSqlTypeByJava
Guesses a default JDBC type for the Java class.- Since:
- 1.1
-
getJavaBySqlType
Get the corresponding Java type by itsTypes
counterpart. Note that this method should be used as a last resort, with explicit mapping provided by user used as a first choice, as it can only guess how to map certain types, such as NUMERIC, etc.- Parameters:
type
- as defined inTypes
- Returns:
- Fully qualified Java type name or null if not found.
-
getJavaBySqlType
- Parameters:
attribute
- to get java type for- Returns:
- Fully qualified Java type name or null if not found.
- Since:
- 4.2
- See Also:
-