11package org .javawebstack .orm .mapper ;
22
3+ import org .javawebstack .orm .SQLType ;
4+
35import java .sql .Timestamp ;
46import java .util .ArrayList ;
57import java .util .Date ;
@@ -54,7 +56,7 @@ public Object mapToJava(Object source, Class<?> type) {
5456 return source ;
5557 }
5658
57- public Class <?> getTargetType (Class <?> type ){
59+ public Class <?> getInternalType (Class <?> type ){
5860 if (type .equals (String .class ))
5961 return String .class ;
6062 if (type .equals (UUID .class ))
@@ -76,34 +78,4 @@ public Class<?> getTargetType(Class<?> type){
7678 return null ;
7779 }
7880
79- public String getSQLType (Class <?> type , int size ){
80- if (type .equals (String .class ))
81- return size >0 ?"VARCHAR(" +size +")" :"TEXT" ;
82- if (type .equals (Integer .class ) || type .equals (int .class ))
83- return "INT" ;
84- if (type .equals (Long .class ) || type .equals (long .class ))
85- return "BIGINT" ;
86- if (type .equals (Double .class ) || type .equals (double .class ))
87- return "DOUBLE" ;
88- if (type .equals (Float .class ) || type .equals (float .class ))
89- return "FLOAT" ;
90- if (type .equals (Timestamp .class ))
91- return "TIMESTAMP" ;
92- if (type .equals (Date .class ))
93- return getSQLType (Timestamp .class , size );
94- if (type .equals (Boolean .class ) || type .equals (boolean .class ))
95- return "TINYINT" ;
96- if (type .equals (UUID .class ))
97- return getSQLType (String .class , 36 );
98- if (type .isEnum ()){
99- List <String > values = new ArrayList <>();
100- for (Object v : type .getEnumConstants ()){
101- Enum <?> vObject = (Enum <?>) v ;
102- values .add ("'" +vObject .name ()+"'" );
103- }
104- return "ENUM(" +String .join ("," , values )+")" ;
105- }
106- return null ;
107- }
108-
10981}
0 commit comments