Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How can we convert com.datastax.driver.core.LocalDate to java.util.Date?

I am working with dates.

Datastax's CQL cassandra API Row.getDate() returns a com.datastax.driver.core.LocalDate.

I want to convert the com.datastax.driver.core.LocalDate object returned by the API to java.util.Date. How can I do that?

like image 335
Jayashree Avatar asked Dec 06 '22 20:12

Jayashree


2 Answers

The LocalDate.getMillisSinceEpoch() Javadoc says Returns the number of milliseconds since January 1st, 1970 GMT. And, the Date(long) constructor Javadoc says Allocates a Date object and initializes it to represent the specified number of milliseconds since the standard base time known as "the epoch", namely January 1, 1970, 00:00:00 GMT. So, given a LocalDate ld you should be able to do something like

Date d = new Date(ld.getMillisSinceEpoch());
like image 133
Elliott Frisch Avatar answered Dec 11 '22 10:12

Elliott Frisch


As the other answer mentions either you can use

Date d = new Date(row.getDate().getMillisSinceEpoch());

or you can use java.sql.Date.valueOf

Date d = java.sql.Date.valueOf(row.getDate().getString());

Instead of using row.getDate I personally use row.getTimestamp which returns Date object itself.

Date d = row.getTimestamp();

like image 45
Pankaj Avatar answered Dec 11 '22 11:12

Pankaj