Java dateFormat und Mysql DateTime

nieselfriem

Bekanntes Mitglied
Hallo!

Ich habe in einer MYsql Datenbank das Datum in DATETIME gespeichert. In meinem kleinen javaprogramm habe ich das Datum wie folgt definiert.
Java:
 while(rs.next()) {

                    dateFormat=new SimpleDateFormat("yyyy/mm/dd HH:mm:ss");
                    dateFormat = rs.getDate(4);
                   ....
                   

                }
welche Methode verwende ich nun um auf das Resultat zugreifen zu können. mit rs.getDate bzw rs.getObject funktioniert es nicht.

gruß niesel
 
Java:
dateFormat=new SimpleDateFormat("yyyy/mm/dd HH:mm:ss");
dateFormat = rs.getDate(4);

Das kann ja auch nicht gehn - rs.getDate(4) gibt die ein java.sql.Date zurück, keine SimpleDateFormat!

Schreib es in eine Date Object und wende dann das SimpleDateFormat an sobald du aus dem Date einen formatierten String haben möchtest.

Java:
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy/mm/dd HH:mm:ss");
while(rs.next()){
    Date date = rs.getDate(4);
    System.out.println("Das Datum ist: "+ dateFormat.format(date));
}
 
Zuletzt bearbeitet von einem Moderator:
Nun habe ich aber noch folgendes Problem:
in meiner Datenbanklasse nehme ich das Datum aus der Tabelle wie folgt auf:
Java:
 java.util.Date datum = rs.getDate(4);
so wie es mir hier beschrieben worden ist. Jedoch ist es in keinem Deutschen Datumsformat.
Dazu verwende ich dann
Java:
 SimpleDateFormat df = new SimpleDateFormat("dd.MM.yyyy");
und dieses möchte ich dann in einen String umwandeln um es Später dann z.B. in einem Eingabefeld einer GUI darzustellen
Java:
 String datum = sdf.format(vermeinz.getDatum()).toString();
wobei die Methode getDatum() den Datentyp Date liefert. jedoch geht dies auch nicht,
es kommt zur Fehlermeldung
Code:
Exception in thread "main" java.lang.IllegalArgumentException: Cannot format given Object as a Date
        at java.text.DateFormat.format(DateFormat.java:281)
        at java.text.Format.format(Format.java:140)
        at testjahb.Main.main(Main.java:27)

Wie kann ich das SimpleDateFormat in einen String umwandeln, wenn nicht mit der Methode getString().
Einfach nur die Ausgabe
Java:
System.out.println("Datum: "+sdf.format(vermeinz.getDatum()));
führt auch zu einer Exception

P.S.
Java:
System.out.println(vermeinz.getDatum());
ergibt 2011-01-07


Gruß niesel
 
Zuletzt bearbeitet:

Zurück
Oben