У меня есть следующий простой код для возврата текущей даты и времени из базы данных Oracle:
Код: Выделить всё
String sql = "select to_char(sysdate,'MM/dd/yyyy HH:MI AM') from dual";
Statement statement = dbConnection.createStatement();
ResultSet rs = statement.executeQuery(sql);
while (rs.next()) {
value = rs.getString(1);
System.out.println(value);
}
Если я запускаю тот же оператор SQL в других приложениях (например, DBeaver), я получаю:
Но когда я запускаю код Java (либо из Eclipse, либо из командной строки), я получаю:
Похоже, Java локализует маркер AM/PM, но я не смог найти, где это можно настроить. Это происходит только на моей машине. Можно ли это где-то настроить не меняя код? Потому что тот же код Java выполняется и печатает ожидаемый результат на других машинах (с маркером PM/AM вместо слова TARDE).
Я использую Windows 10 и JDK 8u281
Подробнее здесь:
https://stackoverflow.com/questions/659 ... result-set