improvements - java time to localdatetime
LocalDateTime elimina los milisegundos (2)
Podrías intentar esto para soltar cualquier cosa menos que segundos.
ldt = ldt.truncatedTo(ChronoUnit.SECONDS);
Estoy trabajando en la aplicación java donde estoy usando Java 8.
He integrado la base de datos (base de datos múltiple Oracle, Mysql, Postgres) y dónde en la base de datos DB la fecha de creación.
El formato de fecha en DB es - 2015-07-29 16: 23: 28.143
Obtengo esto de la base de datos y lo establezco en el objeto Localdatetime
myObj.setCreated(rs.getTimestamp("created").toLocalDateTime());
Así que aquí el problema es que no quiero mostrar / enviar el milisegundo en la respuesta. Quiero mostrar / enviar la fecha como 2015-07-29 16:23:28
Probé el formateador, pero falla al dar una cadena y no quiero cambiar el objeto LocalDateTime a una cadena, ya que esto causará un cambio importante en todas las aplicaciones Java. Así que quiero encontrar la solución.
¿Alguien puede saber alguna solución sobre esto?
Simplemente ponlos a 0
:
myObj.setCreated(rs.getTimestamp("created").toLocalDateTime().withNano(0));
Muestra / prueba:
import java.time.LocalDateTime;
public class DateTimeSample {
public static void main(String[] args) {
LocalDateTime ldt = LocalDateTime.now();
System.out.println(ldt);
System.out.println(ldt.withNano(0));
}
}
Salida:
2015-07-30T16:29:11.684
2015-07-30T16:29:11