ResultSet Как получить String из объекта, когда данные нулевые? - PullRequest
4 голосов
/ 27 февраля 2012

В моей таблице Oracle есть столбцы с другим типом.
Я хочу прочитать все столбцы как число.

String str = resultSet.getString("col1");

Проблема в том, что если столбец в базе данных определен как число, а значение равно

0,5

возвращаемая строка будет

.5


Я не могу использовать любой другой метод получения, например getDecimal () и т. Д.

Если я использую:

String str = resultSet.getObject("col1").toString(); 

Я получу исключение, если значение равно нулю.

Ответы [ 2 ]

5 голосов
/ 27 февраля 2012

Вы можете использовать

String str = String.valueOf(resultSet.getObject("col1"));

в качестве простого обходного пути, чтобы избежать любых исключений.(Не уверен, почему вы не можете использовать resultSet.getDouble("col1"), хотя.)

1 голос
/ 28 февраля 2012

Если вы не хотите видеть пустую строку, а не литерал "null" для нулевого значения (то, что будет String.valueOf()), вы можете использовать:

Object value = resultSet.getObject("col1")
String str = value == null ? "" : value.toString(); 
...