web-dev-qa-db-ja.com

式言語にパラメータが存在するかどうかを確認します

<c:if test="${param.username}" >
</c:if>

Param.usernameが存在するかどうかを確認するにはどうすればよいですか?

42
Borut Flis

not emptyチェックを使用します。

<c:if test="${not empty param.username}" >
</c:if>

編集:?username(値なし)という形式のパラメーターがある場合は、${param.username ne null}を使用する方が安全です

64
adarshr

パラメーターが存在するかどうかを確認したい場合は、nullではないかどうかをテストしてください:

<c:if test="${param.username != null}"></c:if>



より広範な説明:

確認したい場合:

  • yourParamが存在するか、nullでない場合:

    <c:if test="${param.yourParam != null}"></c:if>

  • yourParamが存在しない/ nullの場合

    <c:if test="${param.yourParam == null}"></c:if>

  • yourParamが空でない場合(空の文字列ではなく、nullでもない場合)

    <c:if test="${!empty param.yourParam}"></c:if>

  • yourParamが空の場合(空の文字列またはnull)

    <c:if test="${empty param.yourParam}"></c:if>

  • yourParamが「true」と評価された場合

    <c:if test="${yourParam}"></c:if>

  • yourParamが「false」(「true」以外の文字列)に評価される場合

    <c:if test="${!yourParam}"></c:if>

39

コメントを追加する場合...

リクエストパラメータ「username」がJSPページ「a-jsp.jsp」に存在しないかどうかをテストするには、ページ「a-jsp.jsp」に「if」句を記述します。

<c:if test="${empty param['username']>
...
</c:if>

要求されたURLが次の場合、「if」節を実行します。

http://server/webapp/a-jsp.jsp

または

http://server/webapp/a-jsp.jsp?username=

リクエストされたURLが次の場合は処理しません。

http://server/webapp/a-jsp.jsp?username=foo

4
Léa Massiot