Hareesh, The best way of dealing with data type incompatibilities is to use simple data types. If you only use the basic types (varchar, numeric and date), there shouldn't be any inconsistencies. The advanced types (like clob) are not universally supported.
Yes, getColumnType always uses the same numbers. These constants are defined in java.sql.Types.