Wie format java.sql.Timestamp(yyyy-MM-dd HH:mm:ss.S) in ein Datum(yyyy-MM-dd HH:mm:ss)

Gut, ich bin mit einem detail mit einer Date, denn ich bin immer ein Objekt aus meiner Datenbank und in die variable "fecha" (Datum) von demselben Objekt, ich bin immer ein java.sql.Timestamp, so der formatt ist mit Millisekunden, aber ich will nicht die Millisekunden angezeigt werden. Also muss ich formatt das Datum, ich bekomme aus meiner DB auf einen neuen Termin, der nicht über Millisekunden.

Dies ist das Objekt, Factura:

public class Factura  implements java.io.Serializable {

 private FacturaId id;
 ...
 private boolean activo;
 private Date fecha;
}

In der xml-Datei zugeordnet, die DB habe ich diesen code für die variable "fecha":

<property name="fecha" type="timestamp">
  <column length="19" name="fecha" not-null="true"/>
</property>

In der Datenbank, die Spalte ist fecha DATETIME.

Und wenn ich ein Objekt Factura aus meiner DB ich bin immer diese Art von Datum 2013-10-10 10:49:29.0 aber ich will es ohne die .0 (Millisekunden).

Habe ich versucht, diese (factura ist die Factura Objekt):

try {
   SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
   Date fechaNueva = null;
   String fechaStr = factura.getFecha().toString();
   int tamaño = fechaStr.length()-2;
   fechaStr = fechaStr.substring(0, tamaño); //I get a string without the miliseconds
   fechaNueva = format.parse(fechaStr);
} catch(ParseException ex) {
   ...
}

Aber fechaNueva ist mir Thu Oct 10 10:49:29 CDT 2013 - und ich will nur 2013-10-10 10:49:29 können Sie mir helfen, bitte?

Vielen Dank im Voraus.

InformationsquelleAutor user2284257 | 2013-10-23
Schreibe einen Kommentar