Поддръжката на NLS от JDBC драйвера беше изпусната в Oracle 10g . Независимо от това бих ви препоръчал да не разчитате на специфичната за Oracle NLS функционалност, за да форматирате вашите дати.
За да форматирате дата, извлечена от която и да е база данни в Java, направете следното:
Connection conn = ods.getConnection();
Statement stat = conn.createStatement();
ResultSet rs = stat.executeQuery("select date_column from test_table");
DateFormat format = new SimpleDateFormat('yyyy-dd-MM');
System.out.println(format.format(rs.getDate(1));
Имайте предвид, че екземпляр на SimpleDateFormat е многократно използваем, но не е безопасен за нишки .
Ако използвате Java 8, може да искате вместо това да използвате новия и подобрен Java Time API. За съжаление, ResultSet все още не е актуализиран, за да върне екземпляр на DateTime, така че трябва да конвертирате. Вижте DateTimeFormatter и този въпрос за това как да конвертирате от старо в ново. Сред другите предимства, DateTimeFormatter е напълно безопасен за нишки.
Образците на формат както за стария, така и за новия стил са еднакви; ето ги документите за новия.