I am using JodaTime 1.6.2.
I have a LocalDate that I need to convert to either a (Joda) LocalDateTime, or a java.sqlTimestamp for ormapping.
The reason for this is I have figured out how to convert between a LocalDateTime and a java.sql.Timestamp:
LocalDateTime ldt = new LocalDateTime();
DateTimeFormatter dtf = DateTimeFormatter.forPattern("yyyy-MM-dd HH:mm:ss");
Timestamp ts = Timestamp.valueOf(ldt.toString(dtf));
So, if I can just convert between LocalDate and LocalDateTime, then I can make the continued conversion to java.sql.Timestamp. Thanks for any nudges in the right direction!
Advertisement
Answer
JodaTime
To convert JodaTime’s org.joda.time.LocalDate to java.sql.Timestamp, just do
Timestamp timestamp = new Timestamp(localDate.toDateTimeAtStartOfDay().getMillis());
To convert JodaTime’s org.joda.time.LocalDateTime to java.sql.Timestamp, just do
Timestamp timestamp = new Timestamp(localDateTime.toDateTime().getMillis());
JavaTime
To convert Java8’s java.time.LocalDate to java.sql.Timestamp, just do
Timestamp timestamp = Timestamp.valueOf(localDate.atStartOfDay());
To convert Java8’s java.time.LocalDateTime to java.sql.Timestamp, just do
Timestamp timestamp = Timestamp.valueOf(localDateTime);