Som andra redan har sagt:drivrutinen mappar allt till BigDecimal, även om det är definierat som NUMBER(38) (som skulle kunna mappas till BigInteger)
Men det är ganska enkelt att ta reda på vad föraren kartlägger. Gör helt enkelt ett getObject() i kolumnen i ResultSet och se vilken klass drivrutinen genererade.
Något i stil med:
ResultSet rs = statement.executeQuery("select the_number_column from the_table"); if (rs.next()) { Object o = rs.getObject(1); System.out.println("Class: " + o.getClass().getName()); }