2012-04-01 111 views
2

似乎很簡單,但不適合我。我可以得到當前的一年:從JSP頁面中的當前頁面獲取上一年

<jsp:useBean id="date" class="java.util.Date" /> 
<fmt:formatDate value="${date}" pattern="yyyy" /> 

但由於操作死在那裏,因爲HTML文本,我不能做一個簡單的-1所得到的值。我希望從$ {date}開始的年份爲-1,但是,這是一個日期。

我正在尋找一個非scriptlet,最好是JSTL解決方案。 預先感謝您。

回答

4

JSTL轉換值的基礎上適當coercions rules between object and primitives的頁面,所以這應該工作:

<jsp:useBean id="date" class="java.util.Date" /> 
<fmt:formatDate value="${date}" pattern="yyyy" var="currentYear" /> 

<c:out value="${currentYear}" />/
<c:out value="${currentYear - 1}" /> 

或者根據你的JSP版本,你可以直接使用${currentYear}${currentYear - 1}沒有<c:out>

2

您可以使用EL。

<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> 
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> 
<jsp:useBean id="date" class="java.util.Date" /> 
<fmt:formatDate var="now" value="${date}" pattern="y" /> 
Previous year is ${now - 1} 
+0

對不起,我沒有看到波格丹的答案,而打字我的。 – rickz 2012-04-01 15:23:09