System.currentTimeMillis() und die Sommerzeit

Hallo Zusammen,

ich bin in Java nicht wirklich Zuhause, aber ich vermute, dass wenn dem nicht so wäre, es sich hierbei wahrscheinlich um ein 5 Sekunden Problemchen handeln würde.

Also zur Anzeige von Datenaktualität auf einer Monitorwand erzeuge ich mir ein paar Timestamps und habe dann diverse Abfragen mit einem SQL-Recordset um z.B. die Farbe der Anzeige zu variieren.
Das funktioniert auch seit einigen Monaten ganz wunderbar.

Um Sommer und Winterzeit zu berücksichtigen, beziehe ich mich auf die Systemzeit mit:

Java:
Timestamp vor30Min = new Timestamp(System.currentTimeMillis() - 1800000);

Leider musste ich nun Feststellen, dass demjenigen der meine Datenbank mit Werten füllt, die Sommerzeit s***** egal ist 🙁
Also dachte ich mir, ersetze ich doch den "System.currentTimeMillis()" teil in dem Code mit etwas das sich auf UTC Zeit bezieht... nun geht mir nur mein Vokabular aus...

Kann mir evtl jemand eine Methode nennen die sich dafür eignet?


Vielen Dank

Gruß Uwe
 
System.currentTimeMillis() gibt "lediglich" die Anzahl der Millisekunden seit Unix epoch (1.1.1970) an.

Also gibt es hier keinen Bezug zu irgendeiner Zeitzone.
 
Hallo turtle,

danke für deine Antwort. - Da er sich aber auf die Systemzeit bezieht, welche Bezug zu einer Zeitzone hat, habe ich auch in der Unix Darstellung Bezug zu einer Zeitzone.

Es muss doch eine einfache Möglichkeit geben... notfalls irgendwie abzufragen ob es sich bei dem Zeitpunkt um Sommerzeit handelt, um dann die Stunde abzuziehen...;(

Gruß Uwe
 
[TIPP]Mit Java 8 und dem JSR 310 sind übrigens neue Datum- und Zeitklassen hinzugekommen, falls du dieses schon benutzen solltest.[/TIPP]

Nur so als zusätzlicher Hinweis.
 
Zuletzt bearbeitet:

Neue Themen


Zurück
Oben