JSPで静的変数を宣言する方法はあります<%! int like=0;%>
か?JSPページで静的変数を宣言するためのカスタムタグにタグはありますか?
そうでない場合で、静的整数変数を「このよう<%! int like=0;%>
に」宣言した場合、ELを使用してこの変数値を取得する方法はあります${like}
か?関数にこの値が必要で、をJQuery
使用してこの値を取得できることはわかっていますが<%=like>
、他の方法が必要です。
クライアント (ブラウザー) で使用できるサーバー側で変数を宣言したい場合は、web.xml でサーブレット コンテキスト パラメーターを宣言できます。
<web-app>
<context-param>
<param-name>yourParamName</param-name>
<param-value>yourParamValue</param-value>
</context-param>
...
</web-app>
式言語にはinitParam
、JSP のサーブレット コンテキスト パラメータにアクセスできる暗黙的なオブジェクトがあります。
${initParam.yourParamName}
ELを使用して静的変数にアクセスすることはできません。静的変数を次のように宣言している場合、ELを使用して値を取得することはできません
<%!
public static int a=343;
%>
したがって、 EL<c:set var="a" value="${'hello'}" ></c:set>
を使用するように変数を宣言する必要があります。そうすると、 ELを使用して値(<c:out value="${a}"></c:out>
)を取得するのはあなただけになります。
jspページ(servlet)のコピーは1つしか存在せず、リクエストごとに_jspServiceメソッドが呼び出されるため、すべてのユーザーが同じインスタンス変数を使用できるため、インスタンス変数として宣言する必要があります(_jspServiceメソッド)。つまり、リクエストごとにサーブレットの新しいインスタンスは作成されません。jspのライフサイクルについて参照してください。