Вы можете легко преобразовать java.sql.Timestamp
в java.time.LocalDate
и получить дату String
, отформатировав LocalDate
следующим образом:
public static void main(String[] args) {
// just a timestamp stub that takes "now"
java.sql.Timestamp ts = java.sql.Timestamp.from(Instant.now());
// convert it to a modern date object
LocalDate justDate = ts.toLocalDateTime().toLocalDate();
// print it using a suitable formatter
System.out.println(justDate.format(DateTimeFormatter.ISO_LOCAL_DATE));
}
Выход (сегодня) равен
2020-02-17
Вам просто нужно Java 8 или выше для этого или импортировать библиотеку backport .
РЕДАКТИРОВАТЬ
Если вам не нужен String
, а java.util.Date
, сделайте это только с Instant
, например:
public static void main(String[] args) {
// just a timestamp stub that takes "now"
Instant now = Instant.now();
Timestamp ts = Timestamp.from(now);
// create an Instant from the Timestamp
Instant timestampInstant = ts.toInstant();
// and then create a Date out from that Instant
java.util.Date creationDate = java.util.Date.from(now);
// do something with the Date here...
}
Но, пожалуйста, рассмотрите возможность использования java.time
где это возможно, что может быть в вашем доменном классе ...