2009-05-11 5 views
0

J'ai des champs dans une base de données Mysql tapé datetime.fmt: formatDate et timeZone

je stocker, par exemple, la date d'un paiement avec code suivant Java:

payment.setCreatedOn(new Date(System.currentTimeMillis())); 

Dans ma couche de vue j'utiliser fmt:formatDate aux dates de format:

<fmt:formatDate value="${payment.createdOn}" pattern="EEE, dd MMM yyyy HH:mm:ss"/> 

Mon serveur est à Londres et mon Les utilisateurs de l'application sont à Vienne. L'affichage de l'heure est retardé probablement en raison de différents fuseaux horaires. Je peux utiliser un paramètre timeZone dans fmt: formatDate.

timeZone: Fuseau horaire dans lequel représente l'heure formatée.

Après une recherche dans Google, je pense est valable pour timeZone paramètre la valeur Europe/Vienna.

Est-ce que quelqu'un sait s'il existe une liste quelconque des chaînes timeZone valides?

Répondre

1

Sergio - Je suis sûr que vous avez depuis longtemps trouvé quand même ...

Voici le homepage for the Olson database ou « zoneinfo » qui est la source définitive de l'info TZ.

Et voici un nice wiki pour les zones de navigation.

0

Vous devez utiliser le temps international (UTC/Zulu) pour ajouter le calendrier suivant l'emploi du temps du client , par exemple "GMT + 1". Voir cet exemple.

Mettre ce paramètre comme argument dans votre serveur pour définir l'emploi du temps UTC, dans ce cas est pour tomcat:

-Duser.timezone = "UTC"

/* Java */  

@RequestMapping(value = "/web", method = { RequestMethod.POST, RequestMethod.GET }) 
public String web(Model model, HttpSession session, Locale locale) { 

    Date today = new Date(); 
    model.addAttribute("currentTime", today); 
    model.addAttribute("timezone", "GMT+1"); 

    return "web"; 
} 

Pour afficher la date choisissez le modèle que vous voulez (propriétés)

/* JSP web */ 

<fmt:timeZone value="${timezone}"> 
<spring:message code="date_format_dateMin" var="pattern"/> 
<fmt:formatDate value="${currentTime}" timeZone="${timezone}" pattern="${pattern}" var="searchFormated" /> 
<span class="innerLabel">${searchFormated}</span> 
</fmt:timeZone> 

/* Properties */ 

date_format_dateMin=yyyy/MM/dd HH:mm 
date_format=yyyy/MM/dd HH:mm:ss  
date_format2=yyyy/MM/dd 
date_format3_js=yy/mm/dd 
date_format4_time=HH:mm 
date_format4=dd/MM/yyyy HH:mm:ss 
Questions connexes