Я запускаю запрос, который загружается в ResultSet. Когда я создаю свой объект из ResultSet, я использую различные методы получения ResultSet. Сохраняет ли ResultSet все значения в виде строк независимо от того, что они определены, как в БД? Поэтому, если результатом запроса является число 1, я могу позвонить
rs.getString("result");
AND
rs.getInt("result");
?
Или метод get ResultSet должен соответствовать правильному типу?
Здесь важно указать тип переменной, которая получит возвращаемое значение.
Например, вы можете без проблем использовать rs.getString() в столбце, возвращающем значения int, поскольку числа являются допустимыми строковыми значениями ("1234", "23,45" и т.д.).
Но вы не можете использовать rs.getInt() в столбце со строковыми значениями, потому что возвращаемое значение будет недопустимым для переменной int.
У справки MySQL есть больше информации об этом:
В общем, любой тип данных MySQL может быть преобразован в java.lang.String, и любой численный тип может быть преобразован в любой из числовых типов Java, хотя может произойти округление, переполнение или потеря точности.
Эти типы данных MySQL всегда могут быть преобразованы в эти типы Java:
CHAR, VARCHAR, BLOB, TEXT, ENUM и SET: java.lang.String, java.io.InputStream, java.io.Reader, java.sql.Blob, java.sql.Clob
FLOAT, REAL, DOUBLE PRECISION, NUMERIC, DECIMAL, TINYINT, SMALLINT, MEDIUMINT, INTEGER, BIGINT: java.lang.String, java.lang.Short, java.lang.Integer, java.lang.Long, java.lang.Double, java.math.BigDecimal
DATE, TIME, DATETIME, TIMESTAMP: java.lang.String, java.sql.Date, java.sql.Timestamp
Да и да. Вы можете получить INT из MySQL как java.lang.String, а типы имеют сопоставления
https://dev.mysql.com/doc/refman/5.0/es/connector-j-reference-type-conversions.html
Надеюсь это поможет