JSTL也提供了所有基本的条件语句,使JSP页面的逻辑流程更容易阅读和维护。
条件语句包括:if条件语句和循环条件语句
条件语句
if条件语句
循环条件语句
<c:if>
最基本最简单的条件语句就是<c:if>。<c:if>操作用于基于布尔表达式值来输出body块的内容。如果表达式的结果为真,则JSP容器将对body块的内容处理,并将输出返回到当前的JspWriter。
<c:if>的语法如下:
<c:
if
test=
"expression"
>
<%-- body块内容 --%>
</c:
<%
@page
contentType=
"text/html"
pageEncoding=
"UTF-8"
%>
@taglib
uri=
"http://java.sun.com/jsp/jstl/core"
prefix=
"c"
<jsp:useBean id=
"cal"
class
=
"java.util.GregorianCalendar"
/>
<c:set var=
"hour"
value=
"${cal.time.hours}"
"${hour >=0 && hour <=11}"
<c:out value=
"早上好"
"${hour >=12 && hour <=17}"
"下午好"
"${hour >=18 && hour <=23}"
"晚上好"
首先,我们创建一个对象cal,它是类java.util.GregorianCalendar的一个实例。然后我们将对象的属性hours赋值给变量hour。最后,我们使用<c:if>操作来判断时间并输出对应的问候消息。
循环条件语句类似其他语言的swtich case语句
swtich case
在JSTL中, 可以使用 <c:choose>, <c:when>以及 <c:otherwise>来实现多个选择。 从而替代多个<c:if>的写法。
<c:choose>
<c:when>
<c:otherwise>
<c:when test=
"expression1"
<%-- body content
for
expression 1 -->
</c:when>
"expression2"
expression 2 -->
...
otherwise -->
</c:otherwise>
</c:choose>
在一系列条件中,从上往下, 当条件为true时,<c:when>分支将执行,并将结果输出到JspWriter。然后不再执行任何操作。如果没有一个<c:when>的条件是true, <c:otherwise>分支的内容将会被进行处理并显示输出到JspWriter中。
true
上面的例子可以使用 <c:choose>, <c:when>以及 <c:otherwise>操作进行重写
><c:out value=
/></c:when>
<c:otherwise><c:out value=
/></c:otherwise>
注意:如果这样写:
输出时,会多输出一个换行符。
原文链接:https://codingdict.com/