View Javadoc
1 /*** $Id: GenTypes.java,v 1.1.1.1 2004/05/18 10:50:17 mochoa Exp $*/ 2 package org.j2ee.dao.gen; 3 4 import java.sql.Types; 5 import java.util.Map; 6 import java.util.HashMap; 7 8 /*** 9 * Last modified $Date: 2004/05/18 10:50:17 $ 10 * @version $Revision: 1.1.1.1 $ 11 * @author jvlio (jvlio@users.sourceforge.net) - 04/11/2002 - 02:02:49 12 */ 13 public class GenTypes { 14 15 public static final String[] SQL_TYPES = { 16 "ARRAY","BIGINT","BINARY","BIT","BLOB","CHAR","CLOB","DATE","DECIMAL", 17 "DISTINCT","DOUBLE","FLOAT","INTEGER","JAVA_OBJECT","LONGVARBINARY", 18 "LONGVARCHAR","NULL","NUMERIC","OTHER","REAL","REF","SMALLINT","STRUCT", 19 "TIME","TIMESTAMP","TINYINT","VARBINARY","VARCHAR" }; 20 21 22 /*** 23 * BigDecimal=java.math, String=java.lang, Date=java.sql, Time=java.sql, Timestamp=java.sql 24 * Blob=java.sql, Clob=java.sql, Array=java.sql, Ref=java.sql, Struct=java.sql 25 */ 26 public static final String[] JAVA_TYPES = { 27 "boolean","byte","short","int","long","float","double","BigDecimal", 28 "String","Date","Time","Timestamp","byte[]","Blob","Clob","Array","Ref", 29 "Struct" }; 30 31 public static final String[] RSET_PROP = { 32 "Boolean","Byte","Short","Int","Long","Float","Double","BigDecimal", 33 "String","Date","Time","Timestamp","Bytes","Blob","Clob","Array","Ref", 34 "Struct" }; 35 36 public static final String[] JAVA_WRAPPERS = { 37 "Boolean","Byte","Short","Integer","Long","Float","Double",null, 38 null,null,null,null,"String",null,null,null,null, 39 null }; 40 41 42 public static int BOOLEAN = 0; 43 public static int BYTE = 1; 44 public static int SHORT = 2; 45 public static int INT = 3; 46 public static int LONG = 4; 47 public static int FLOAT = 5; 48 public static int DOUBLE = 6; 49 public static int BIGDECIMAL = 7; 50 public static int STRING = 8; 51 public static int DATE = 9; 52 public static int TIME = 10; 53 public static int TIMESTAMP = 11; 54 public static int BYTEA = 12; 55 public static int BLOB = 13; 56 public static int CLOB = 14; 57 public static int ARRAY = 15; 58 public static int REF = 16; 59 public static int STRUCT = 17; 60 61 /*** 62 * @associates Integer 63 */ 64 public static final Map javaTypesMap = new HashMap(); 65 66 static { 67 for (int i=0; i<JAVA_TYPES.length; i++) 68 javaTypesMap.put(JAVA_TYPES[i],new Integer(i)); 69 } 70 71 public static String[] getSqlTypes() { return SQL_TYPES; } 72 public static String[] getJavaTypes() { return JAVA_TYPES; } 73 public static String[] getRsetProp() { return RSET_PROP; } 74 public static String[] getJavaWrappers() { return JAVA_WRAPPERS; } 75 76 77 public static int getJavaType(String type) { 78 Integer jtype = (Integer)javaTypesMap.get(type); 79 return (jtype==null)? -1 : jtype.intValue(); 80 } 81 82 public static String sqlTypeToString(int sqlType) { 83 switch (sqlType) { 84 case Types.ARRAY : return "ARRAY"; 85 case Types.BIGINT : return "BIGINT"; 86 case Types.BINARY : return "BINARY"; 87 case Types.BIT : return "BIT"; 88 case Types.BLOB : return "BLOB"; 89 case Types.CHAR : return "CHAR"; 90 case Types.CLOB : return "CLOB"; 91 case Types.DATE : return "DATE"; 92 case Types.DECIMAL : return "DECIMAL"; 93 case Types.DISTINCT : return "DISTINCT"; 94 case Types.DOUBLE : return "DOUBLE"; 95 case Types.FLOAT : return "FLOAT"; 96 case Types.INTEGER : return "INTEGER"; 97 case Types.JAVA_OBJECT : return "JAVA_OBJECT"; 98 case Types.LONGVARBINARY : return "LONGVARBINARY"; 99 case Types.LONGVARCHAR : return "LONGVARCHAR"; 100 case Types.NULL : return "NULL"; 101 case Types.NUMERIC : return "NUMERIC"; 102 case Types.OTHER : return "OTHER"; 103 case Types.REAL : return "REAL"; 104 case Types.REF : return "REF"; 105 case Types.SMALLINT : return "SMALLINT"; 106 case Types.STRUCT : return "STRUCT"; 107 case Types.TIME : return "TIME"; 108 case Types.TIMESTAMP : return "TIMESTAMP"; 109 case Types.TINYINT : return "TINYINT"; 110 case Types.VARBINARY : return "VARBINARY"; 111 case Types.VARCHAR : return "VARCHAR"; 112 default: return "??"; 113 } 114 } 115 116 117 118 /*** 119 * This mapping is extracted from the book "Data Base Programing with JDBC 120 * and Java", table 3-2, page 44. 121 * @param type a SQL type defined in java.sql.Types class. 122 * @return a index to JAVA_TYPES constant. 123 */ 124 static int mapSQLTypeToJavaType(int type) { 125 switch (type) { 126 case Types.BIT : return BOOLEAN; 127 case Types.TINYINT : return BYTE; 128 case Types.SMALLINT : return SHORT; 129 case Types.INTEGER : return INT; 130 case Types.BIGINT : return LONG; 131 case Types.REAL : return FLOAT; 132 case Types.FLOAT : return DOUBLE; 133 case Types.DOUBLE : return DOUBLE; 134 case Types.DECIMAL : return BIGDECIMAL; 135 case Types.NUMERIC : return BIGDECIMAL; 136 case Types.CHAR : return STRING; 137 case Types.VARCHAR : return STRING; 138 case Types.LONGVARCHAR : return STRING; 139 case Types.DATE : return DATE; 140 case Types.TIME : return TIME; 141 case Types.TIMESTAMP : return TIMESTAMP; 142 case Types.BINARY : return BYTEA; 143 case Types.VARBINARY : return BYTEA; 144 case Types.LONGVARBINARY : return BYTEA; 145 case Types.BLOB : return BLOB; 146 case Types.CLOB : return CLOB; 147 case Types.ARRAY : return ARRAY; 148 case Types.REF : return REF; 149 case Types.STRUCT : return STRUCT; 150 case Types.DISTINCT : return STRING; 151 case Types.JAVA_OBJECT : return STRING; 152 case Types.NULL : return STRING; 153 case Types.OTHER : return STRING; 154 default: return -1; 155 } 156 } 157 158 159 }

This page was automatically generated by Maven