如何设置Spring MVC模型的默认值?

时间:2013-07-16 16:22:52

标签: jsp spring-mvc jstl el

我有一个Spring MVC项目并使用JSP作为视图。

我有这样的代码片段:

<p>${user.name}</p>

当用户不为null时,它会按预期呈现,但是当用户为null时,我的预期呈现为:

<p>Anonymous</p>

我不想在Controller中设置不同的模型。 Spring MVC是否有任何“语法”,例如:

<p>${user.name:default("Anonymous")}</p>

或任何相关的?

如果有的话,你能给我一个官方的语法链接吗?

1 个答案:

答案 0 :(得分:2)

您可以使用<c:choose>中的JSTL来实现此目的。

<p>
    <c:choose>
        <c:when test="${not empty user}">
            <c:out value="${user.name}" />
        </c:when>
        <c:otherwise>
            <c:out value="Anonymous" />
        </c:otherwise>
    </c:choose>
</p>

或者更容易:

<p>${not empty user ? user.name : 'Anonymous'}</p>