Maison  >  Article  >  Java  >  Comment récupérer l’heure moyenne de Greenwich (GMT) à partir d’un serveur de temps Internet en Java ?

Comment récupérer l’heure moyenne de Greenwich (GMT) à partir d’un serveur de temps Internet en Java ?

Linda Hamilton
Linda Hamiltonoriginal
2024-11-17 08:38:03208parcourir

How to Retrieve Greenwich Mean Time (GMT) from an Internet Time Server in Java?

Comment acquérir l'heure à partir de serveurs de temps Internet en Java

Pour obtenir l'heure précise, les programmeurs rencontrent fréquemment le besoin de consulter des serveurs de temps fiables . Cet article montre comment exploiter les fonctionnalités de Java pour récupérer l'heure d'un serveur de temps Internet spécifié, en particulier in.pool.ntp.org, afin de calculer l'heure moyenne de Greenwich (GMT).

Le langage de programmation Java propose le NTP ( Network Time Protocol), permettant aux développeurs de synchroniser l'heure avec des sources externes. L'extrait de code suivant illustre comment utiliser cette bibliothèque :

import java.net.InetAddress;
import java.util.Date;

import org.apache.commons.net.ntp.NTPUDPClient;
import org.apache.commons.net.ntp.TimeInfo;
import org.apache.commons.net.ntp.TimeStamp;

public class TimeServer {

    public static void main(String[] args) throws Exception {
        // Define the time server address
        String TIME_SERVER = "in.pool.ntp.org"; 

        // Instantiate a NTP client
        NTPUDPClient timeClient = new NTPUDPClient();

        // Get the IP address of the time server
        InetAddress inetAddress = InetAddress.getByName(TIME_SERVER);

        // Retrieve time information from the server
        TimeInfo timeInfo = timeClient.getTime(inetAddress);

        // Extract the transmission timestamp from the received packet
        long returnTime = timeInfo.getMessage().getTransmitTimeStamp().getTime();

        // Convert the timestamp to a Date object for readability
        Date time = new Date(returnTime);

        // Display the obtained GMT
        System.out.println("Current GMT: " + time);
    }
}

Cet exemple de code se connecte au serveur de temps spécifié, récupère les informations temporelles et calcule GMT en conséquence. L'heure GMT résultante est ensuite affichée de manière pratique sous forme d'objet Date, offrant à la fois précision et lisibilité.

En utilisant la bibliothèque Apache Commons Net en combinaison avec la classe NTPUDPClient, les programmeurs Java peuvent accéder de manière transparente aux serveurs de temps Internet et obtenir une heure précise. valeurs, quels que soient les paramètres du système ou les dérives potentielles de l'horloge.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn