Zeit von Internet-Zeitservern in Java abrufen
Bei dieser Diskussion geht es darum, die Greenwich Mean Time (GMT) von einer externen Quelle zu erhalten, anstatt sich darauf zu verlassen auf dem lokalen System. Zeitsynchronisationsserver bieten eine Lösung für diesen Bedarf.
Java-basierter Ansatz
Um die Zeit von einem Zeitserver in Java abzurufen, ziehen Sie den folgenden Ansatz in Betracht:
Verwendung der JNTP-Bibliothek (oder einer ähnlichen)
Es gibt externe Bibliotheken, die diese Aufgabe erleichtern. JNTP bietet beispielsweise eine unkomplizierte Schnittstelle für den Zugriff auf Zeitserver.
Herstellen einer Verbindung zum Zeitserver
Sobald Sie eine Bibliothek ausgewählt haben, stellen Sie eine Verbindung zu her den gewünschten Zeitserver mithilfe der Methoden dieser Bibliothek. Der folgende Code demonstriert dies anhand der JNTP-Bibliothek:
import org.jnbt.NTPUDPClient; import org.jnbt.TimeInfo; import java.net.InetAddress; String TIME_SERVER = "time-a.nist.gov"; NTPUDPClient timeClient = new NTPUDPClient(); InetAddress inetAddress = InetAddress.getByName(TIME_SERVER);
Abrufen der Uhrzeit
Je nach verwendeter Bibliothek kann die Methode zum Abrufen der Uhrzeit variieren . Mit JNTP können Sie die Zeit des Servers wie folgt abrufen:
TimeInfo timeInfo = timeClient.getTime(inetAddress); long returnTime = timeInfo.getMessage().getTransmitTimeStamp().getTime(); Date time = new Date(returnTime);
Denken Sie daran, dass die Verwendung von timeInfo.getReturnTime() die aktuelle Systemzeit und nicht die empfangene Zeit zurückgibt. Verwenden Sie stattdessen timeInfo.getMessage().getTransmitTimeStamp().getTime().
Das obige ist der detaillierte Inhalt vonWie kann ich die Greenwich Mean Time (GMT) von Internet-Zeitservern in Java abrufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!