他の人がすでに言っているように、ドライバーはNUMBER(38)(BigIntegerにマップできる)として定義されている場合でも、すべてをBigDecimalにマップします
しかし、ドライバーが何をマップするかを見つけるのは非常に簡単です。 ResultSetの列でgetObject()を実行し、ドライバーが生成したクラスを確認するだけです。
次のようなもの:
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());
}