Вопрос

У меня есть цикл, который проходит все новости, которые у нас есть на нашем сайте. Одно из полей дата ${newsitem.value['Date']}, дано в миллисекундах. Я хотел бы показать эту дату в формате месяца / день / год на веб-странице. Я думал, что метка формата JSTL, <fmt:formatDate>, поможет, но я не преуспел. Вы знаете, как это сделать?

<cms:contentaccess var="newsitem" />
<h2><c:out value="${newsitem.value['Title']}" /></h2>
// display date here        
<c:out value="${newsitem.value['Text']}"  escapeXml="false" />
Это было полезно?

Решение

Да, Jstl formatDate Тег должен выполнять работу в сочетании с изменением значения времени метки времени в объект даты (который требуется, чтобы обойти исключение, упомянутое в вашем комментарии).

Убедитесь, что вы правильно определили fmt префикс в объявлениях JSP

<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>

Сделайте выходные данные, преобразуйте отметку времени до значения даты. я использую yyyy-MM-dd как то формат шаблона, то dateFormat Поддержка тегов Другие варианты форматирования также.

<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" />
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top