私はこのようなことをしたいです:
<?php echo date('Y'); ?>
しかし.jsp
ファイル。すべての チュートリアル どこかにクラスを構築する必要があると思います。 appFuseとTapestryを実行しています。確かにそれらのうちの1つ(そうでない場合Java自体)は、この種のことをすべてのオーバーヘッドなしで実行するための何かを提供してくれます。
これはうまくいくようですが、うまくいきません:
<%= new Date.getYear() %>
jsp:useBean
を使用してJava.util.Date
インスタンスを作成し、JSTL fmt:formatDate
を使用して SimpleDateFormat
を使用して人間が読める文字列にフォーマットします パターン。
<%@ taglib uri="http://Java.Sun.com/jsp/jstl/fmt" prefix="fmt" %>
<jsp:useBean id="date" class="Java.util.Date" />
Current year is: <fmt:formatDate value="${date}" pattern="yyyy" />
昔ながらのscriptletの方法は次のようになります。
<%= new Java.text.SimpleDateFormat("yyyy").format(new Java.util.Date()) %>
@page import
ディレクティブを使用しない場合は、完全修飾クラス名を指定する必要があることに注意してください。これが問題の原因である可能性があります。 scriptletsを使用することは、10年前から非常に 非推奨 です。
これはすべて [jsp]
タグ情報ページ にも示されています:)
<%= new Java.util.Date().getYear() + 1900 %>
私の解決策:
<%@page import="Java.util.Calendar"%>
<%@page import="Java.util.GregorianCalendar"%>
<%
GregorianCalendar cal = new GregorianCalendar();
out.print(cal.get(Calendar.YEAR));
%>
[〜#〜] jstl [〜#〜] を使用してJSPを記述し、その<fmt>
タグを使用して日付などをフォーマットする必要があります。
Java 8で年を出力するには、以下を使用できます。
<%= LocalDate.now().getYear() %>