Bonjour à tous,
Je rencontre un problème de date dans le cadre du développement d'un chat en Java. Avant l'insertion d'un message en base de données, je set la date du message en utilisant un GregorianCalendar. Malheureusement, tous les messages sont datés 2h avant l'heure réelle. Par exemple, j'écris un message à 15:20:33, il sera enregistré comme ayant été rédigé à 13:20:33![]()
Ci-dessous un extrait de la structure de l'objet Message et du code réalisant l'insertion du message en base de données:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 public class Message { private Long id; private Calendar date; private String message; // ... public void setDate(Calendar date) { this.date = date; } // ... }J'ai bien essayé de passé un objet TimeZone ou un objet Locale dans le constructeur de GregorianCalendar, malheureusement, rien n'y fait...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 // ... Message msg = new Message(); // ... msg.setDate(new GregorianCalendar()); // ...
En soit, ce n'est pas vraiment un problème, mais côté base de données, un job efface toutes les 30 secondes tous les messages plus vieux d'1/2 heure...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 msg.setDate(new GregorianCalendar(TimeZone.getTimeZone("France/Paris"))); msg.setDate(new GregorianCalendar(TimeZone.getTimeZone("GMT+01/00"))); msg.setDate(new GregorianCalendar(Locale.FRANCE));
Merci d'avance pour vos réponses![]()
Partager