2010-11-24 2 views
2

Bonjour tous i ont une application j2ee utilisant le cadre du printemps et pendant le débogage sur le serveur en ligne (CentOS os) en essayant d'obtenir la date dans l'application en imprimant la valeur de new Date(); objet il récupère le temps dans GMT- 6 Bien que lorsque le serveur arrive à la date de commande , il est récupéré en temps GMT, en temps réel, donc je me demande d'où vient le GMT-6, pourquoi un tel comportement étrange se produit?Obtenir la date dans Java sur Centos OS n'est pas correct?

Répondre

0

Le problème est résolu après le redémarrage de l'apache, tomcat ... mais ne sais toujours pas pourquoi un tel comportement se produit.

+0

Assurez-vous qu'aucun code de l'application ne modifie le fuseau horaire JVM par défaut. –

+0

pouvez-vous s'il vous plaît dites-moi quelles méthodes vous pensez mai faire cela? –

0

Peut-être quelque part dans votre application le fuseau horaire par défaut est changé avec TimeZone.setDefault(..)?

+0

recherché l'ensemble de l'application, n'a pas trouvé une telle chose en réglant le fuseau horaire à la valeur par défaut. –

1

Cela me semble être un problème lié aux paramètres régionaux. Plus spécifiquement, ce n'est pas un problème, c'est juste la manière de Java de gérer les différents fuseaux horaires/paramètres régionaux.

En utilisant le code de this article:

Properties p = System.getProperties(); 
Enumeration keys = p.keys(); 
while (keys.hasMoreElements()) { 
    String key = (String)keys.nextElement(); 
    String value = (String)p.get(key); 
    System.out.println(key + ": " + value); 
} 

vous pouvez voir comment Java interprète votre environnement.

Si vous modifiez le fuseau horaire/les paramètres régionaux de CentOS, Java devrait prendre en compte ces changements et afficher l'heure en conséquence. Mais cela ressemble à une surcharge et customizing date format basé sur les paramètres régionaux pourrait être ce dont vous avez besoin.

Différentes applications peuvent sortir la même date différemment.

+0

s'il vous plaît voir ma réponse ci-dessus, et dites-moi ce que vous en pensez? –

+0

@ sword101: l'heure GMT-6 sortie est-elle correcte? Cela arrive-t-il encore une fois au redémarrage? Si oui quand? Quel est votre débogueur? – darioo

+0

oui l'heure est correcte en GMT-6, et oui cela arrive encore après le redémarrage, mais je n'ai pas remarqué de motif ici, et je débogue avec log4j ... –