variable una poner obtener insertar inicializar hora guardar fechas fecha desde declarar comparar como actual java sql datetime sqldatetime

una - Conversión de fecha de Java a indicación de fecha y hora Sql



insertar hora en mysql desde java (5)

Eche un vistazo a SimpleDateFormat :

java.util.Date utilDate = new java.util.Date(); java.sql.Timestamp sq = new java.sql.Timestamp(utilDate.getTime()); SimpleDateFormat sdf = new SimpleDateFormat("dd.MM.yyyy HH:mm:ss"); System.out.println(sdf.format(sq));

Estoy intentando insertar java.util.Date después de convertirlo a java.sql.Timestamp y estoy usando el siguiente fragmento de código:

java.util.Date utilDate = new java.util.Date(); java.sql.Timestamp sq = new java.sql.Timestamp(utilDate.getTime());

Pero esto me está dando sq como 2014-04-04 13:30:17.533

¿Hay alguna manera de obtener la salida sin milisegundos?


El problema es con la forma en que está imprimiendo los datos de tiempo

java.util.Date utilDate = new java.util.Date(); java.sql.Timestamp sq = new java.sql.Timestamp(utilDate.getTime()); System.out.println(sa); //this will print the milliseconds as the toString() has been written in that format SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); System.out.println(sdf.format(timestamp)); //this will print without ms


Puede cortar los milisegundos usando un Calendar :

java.util.Date utilDate = new java.util.Date(); Calendar cal = Calendar.getInstance(); cal.setTime(utilDate); cal.set(Calendar.MILLISECOND, 0); System.out.println(new java.sql.Timestamp(utilDate.getTime())); System.out.println(new java.sql.Timestamp(cal.getTimeInMillis()));

Salida:

2014-04-04 10:10:17.78 2014-04-04 10:10:17.0


Sugiero usar DateUtils de la biblioteca apache.commons.

long millis = DateUtils.truncate(utilDate, Calendar.MILISECONDS).getTime(); java.sql.Timestamp sq = new java.sql.Timestamp(millis );


java.util.Date utilDate = new java.util.Date(); java.sql.Date sqlDate = new java.sql.Date(utilDate.getTime()); System.out.println("utilDate:" + utilDate); System.out.println("sqlDate:" + sqlDate);

Esto me da el siguiente resultado:

utilDate:Fri Apr 04 12:07:37 MSK 2014 sqlDate:2014-04-04