Come formattare la data in JSTL
-
26-09-2019 - |
Domanda
Ho un ciclo che passa attraverso tutte le notizie che abbiamo sul nostro sito. Uno dei campi è data ${newsitem.value['Date']}
, data in millliseconds. Mi piacerebbe per visualizzare questa data nel formato mese / giorno / anno sulla pagina web. Ho pensato tag formato JSTL, <fmt:formatDate>
, avrebbe aiutato, ma non ci sono riuscito. sai come si fa?
<cms:contentaccess var="newsitem" />
<h2><c:out value="${newsitem.value['Title']}" /></h2>
// display date here
<c:out value="${newsitem.value['Text']}" escapeXml="false" />
Soluzione
Sì il tag JSTL formatDate
dovrebbe fare il lavoro in combinazione con la modifica del valore timestamp in un oggetto data (che è necessario per aggirare l'eccezione di cui al tuo commento).
Assicurarsi di aver correttamente definito il prefisso fmt
nelle dichiarazioni JSP
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
Render l'uscita, di convertire il timestamp per un valore di data prima. Sto utilizzando yyyy-MM-dd
come il modello formato , i supporti tag dateFormat
altre opzioni di formattazione come bene.
<cms:contentaccess var="newsitem" />
<jsp:useBean id="newsDate" class="java.util.Date" />
<jsp:setProperty name="newsDate" property="time" value="${newsitem.value['Date']}" />
<h2><c:out value="${newsitem.value['Title']}" /></h2>
<fmt:formatDate pattern="yyyy-MM-dd" value="${newsDate}" />
<c:out value="${newsitem.value['Text']}" escapeXml="false" />