Задача: используя чистый JDBC, выбрать из базы данных поле с типом DATE и форматировать дату к нужному формату.
Решение: для получения даты из набора данных
Параметры форматирования для SimpleDateFormat приведены в официальной документации.
Решение: для получения даты из набора данных
ResultSet
необходимо воспользоваться методом getDate()
, результат работы которого отформатировать при помощи родного java класса java.text.SimpleDateFormat
. Как это всё выглядит в сборке показано ниже - код отлично документирован.import java.sql.*;
import java.text.SimpleDateFormat;
import java.util.Date;
public class getDateFormat {
public static void main(String[] args){
// создаем подключение, в данном примере к Oracle
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
Connection conn = DriverManager
.getConnection("jdbc:oracle:thin:@192.168.0.1:1521:db11g",
"user_name", "user_pass"
);
// выполняем запрос, возвращающий в составе полей
// d_point типа DATE
ResultSet rs = conn.createStatement()
.executeQuery("select id, action, d_point from users_log");
// перебираем результаты в цикле
while (rs.next()){
// выводим id записи и текстовое поле action
System.out.println("Id: ".concat( rs.getInt("id").toString() )
.concat("\n")
.concat("Action: ").concat(
rs.getString("action")
)
);
// получаем поле с датой
Date d_point = rs.getDate("d_point");
// форматируем дату и выводим
String dateFormatted = new SimpleDateFormat("dd.MM.yyyy")
.format( d_point ).toString();
System.out.println("Date: ".concat(dateFormatted));
}
}
}
Параметры форматирования для SimpleDateFormat приведены в официальной документации.
Spasibo. Vsjo rabotaet kak nado.
ОтветитьУдалить