看似简单,但不适合我。我可以通过以下方式获得当前年份:
<jsp:useBean id="date" class="java.util.Date" />
<fmt:formatDate value="${date}" pattern="yyyy" />
但是我不能在结果值中做一个简单的-1因为操作在那里死了,就像html文本一样。我希望从那个$ {date}那一年开始,但是,这是一个约会。
我正在寻找一个非scriptlet,最好是JSTL解决方案。 提前谢谢。
答案 0 :(得分: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>
。
答案 1 :(得分: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}