Jak przekonwertować Localdatetime na sygnaturę czasową? Chcę korzystać z nowego interfejsu SE 8, ponieważ jest on lepszy niż data i kalendarz wykorzystania. Planuję używać localdatetime w całym programie, a następnie umieszczam tę datę w bazie danych mysql. Szukałem odpowiedzi, ale wydaje się, że nie ma zbyt wielu pytań i odpowiedzi dla java.time. To jest trochę kodu, który testuję. To tyle, ile mam.Konwertuj java.time.LocalDateTime SE 8 na timestamp
LocalDateTime c = LocalDateTime.now();
java.sql.Timestamp javaSqlDate = new java.sql.Timestamp(c.getLong());
Myślę, że najpierw muszę przekonwertować go na długi, ale nie wiem jak. Interfejs API umożliwia konwertowanie poszczególnych elementów, takich jak miesiąc i dzień, ale nie dla całej daty. Skoro już tu jestem, w jaki sposób przekonwertować z timestamp? Czy powinienem po prostu skorzystać z jodobime?
Próbowałem to:
LocalDateTime c = LocalDateTime.now();
ZoneId zoneId = ZoneId.systemDefault();
System.out.println("this:" + c);
java.sql.Timestamp javaSqlDate = new java.sql.Timestamp(c.atZone(zoneId).toEpochSecond());
pst.setTimestamp(2, javaSqlDate);
tylko Oszczędza datę około 1970. system.print wyświetla bieżącą datę poprawnie. Chcę zapisać aktualną datę.
Rzeczywisty program jest przechowywanie dat w LocalDateTime. –