66public class SQLTypeToJpaTypeMapping {
77
88 public static final String STRING = "String" ;
9- public static final String BYTE_ARRAY = "byte []" ;
10- public static final String DOUBLE = "double " ;
11- public static final String INT = "int " ;
12- public static final String FLOAT = "float " ;
9+ public static final String BYTE_ARRAY = "Byte []" ;
10+ public static final String DOUBLE = "Double " ;
11+ public static final String INT = "Integer " ;
12+ public static final String FLOAT = "Float " ;
1313 public static final String BIG_DECIMAL = "java.math.BigDecimal" ;
1414 private static final Map <String , String > sqlToJavaMap = new HashMap <>();
1515
16+ public static final String LONG = "Long" ;
17+
18+ public static final String BOOLEAN = "Boolean" ;
19+
20+ public static final String JAVA_SQL_TIMESTAMP = "java.sql.Timestamp" ;
21+
22+ public static final String JAVA_SQL_DATE = "java.sql.Date" ;
23+
24+ public static final String JAVA_SQL_TIME = "java.sql.Time" ;
25+
26+ public static final String SHORT = "Short" ;
27+
28+ public static final String BYTE = "Byte" ;
29+
1630 static {
1731 //Id
1832 sqlToJavaMap .put ("UUID" , "java.util.UUID" );
1933
2034 // Numeric Types
2135 sqlToJavaMap .put ("NUMERIC" , BIG_DECIMAL );
2236 sqlToJavaMap .put ("DECIMAL" , BIG_DECIMAL );
23- sqlToJavaMap .put ("TINYINT" , "byte" );
24- sqlToJavaMap .put ("SMALLINT" , "short" );
37+ sqlToJavaMap .put ("TINYINT" , BYTE );
38+ sqlToJavaMap .put ("SMALLINT" , SHORT );
2539 sqlToJavaMap .put ("MEDIUMINT" , INT );
2640 sqlToJavaMap .put ("INTEGER" , INT );
2741 sqlToJavaMap .put ("INT" , INT );
28- sqlToJavaMap .put ("BIGINT" , "long" );
29- sqlToJavaMap .put ("LONG" , "long" );
42+ sqlToJavaMap .put ("BIGINT" , LONG );
43+ sqlToJavaMap .put ("LONG" , LONG );
3044 sqlToJavaMap .put ("REAL" , FLOAT );
3145 sqlToJavaMap .put ("BINARY_FLOAT" , DOUBLE );
3246 sqlToJavaMap .put ("BINARY_DOUBLE" , DOUBLE );
@@ -38,14 +52,14 @@ public class SQLTypeToJpaTypeMapping {
3852 sqlToJavaMap .put ("BIGSERIAL" , INT );
3953
4054 //Boolean types
41- sqlToJavaMap .put ("BIT" , "boolean" );
42- sqlToJavaMap .put ("BOOLEAN" , "boolean" );
55+ sqlToJavaMap .put ("BIT" , BOOLEAN );
56+ sqlToJavaMap .put ("BOOLEAN" , BOOLEAN );
4357
4458 //Date and Time Types
45- sqlToJavaMap .put ("DATE" , "java.sql.Date" );
46- sqlToJavaMap .put ("TIME" , "java.sql.Time" );
47- sqlToJavaMap .put ("TIMESTAMP" , "java.sql.Timestamp" );
48- sqlToJavaMap .put ("DATETIME" , "java.sql.Timestamp" ); // Use @Temporal
59+ sqlToJavaMap .put ("DATE" , JAVA_SQL_DATE );
60+ sqlToJavaMap .put ("TIME" , JAVA_SQL_TIME );
61+ sqlToJavaMap .put ("TIMESTAMP" , JAVA_SQL_TIMESTAMP );
62+ sqlToJavaMap .put ("DATETIME" , JAVA_SQL_TIMESTAMP ); // Use @Temporal
4963
5064 //String Types
5165 sqlToJavaMap .put ("CHARACTER" , STRING );
@@ -68,17 +82,17 @@ public class SQLTypeToJpaTypeMapping {
6882
6983 // Use @Lob
7084 sqlToJavaMap .put ("BYTEA" , STRING );
71- sqlToJavaMap .put ("CLOB " , STRING );
72- sqlToJavaMap .put ("NCLOB " , STRING );
73- sqlToJavaMap .put ("TINYTEXT " , STRING );
74- sqlToJavaMap .put ("TEXT " , STRING );
75- sqlToJavaMap .put ("MEDIUMTEXT " , STRING );
76- sqlToJavaMap .put ("LONGTEXT " , STRING );
77-
78- sqlToJavaMap .put ("TINYBLOB " , BYTE_ARRAY );
79- sqlToJavaMap .put ("BLOB " , BYTE_ARRAY );
80- sqlToJavaMap .put ("MEDIUMBLOB " , BYTE_ARRAY );
81- sqlToJavaMap .put ("LONGBLOB " , BYTE_ARRAY );
85+ sqlToJavaMap .put ("CLOB" , STRING );
86+ sqlToJavaMap .put ("NCLOB" , STRING );
87+ sqlToJavaMap .put ("TINYTEXT" , STRING );
88+ sqlToJavaMap .put ("TEXT" , STRING );
89+ sqlToJavaMap .put ("MEDIUMTEXT" , STRING );
90+ sqlToJavaMap .put ("LONGTEXT" , STRING );
91+
92+ sqlToJavaMap .put ("TINYBLOB" , BYTE_ARRAY );
93+ sqlToJavaMap .put ("BLOB" , BYTE_ARRAY );
94+ sqlToJavaMap .put ("MEDIUMBLOB" , BYTE_ARRAY );
95+ sqlToJavaMap .put ("LONGBLOB" , BYTE_ARRAY );
8296
8397 sqlToJavaMap .put ("RAW" , BYTE_ARRAY );
8498 sqlToJavaMap .put ("LONG RAW" , BYTE_ARRAY );
0 commit comments