<c:choose>、<c:when>和<c:otherwise>在一起连用,可以实现Java语言中的if-else语句的功能。例如以下代码根据username请求参数的值来打印不同的结果:
- <c:choose>
- <c:when test="${empty param.username}">
- Nnknown user.
- </c:when>
- <c:when test="${param.username=='Tom'}">
- ${param.username} is manager.
- </c:when>
- <c:otherwise>
- ${param.username} is employee.
- </c:otherwise>
- </c:choose>
以上标签等价于以下Java程序片段:
- <%
- String username=request.getParameter("username");
- if(username==null){
- //对应第一个<c:when>标签的主体
- out.print("Nnknown user.");
- }else if(username.equals("Tom")){
- //对应第二个<c:when>标签的主体
- out.print(username+" is manager.");
- }else{
- //对应<c:otherwise>标签的主体
- out.print(username+" is employee.");
- }
- %>
<c:choose>、<c:when>和<c:otherwise>标签的使用必须符合以下语法规则:
<c:when>和<c:otherwise>不能单独使用,它们必须位于<c:choose>父标签中。
在<c:choose>标签中可以包含一个或多个<c:when>标签。
在<c:choose>标签中可以不包含<c:otherwise>标签。
在<c:choose>标签中如果同时包含<c:when>和<c:otherwise>标签,那么<c:otherwise>必须位于<c:when>标签之后。
相关推荐
本篇将详细讲解JSTL的基本概念、核心组件以及通过"jstl练习实例"进行的学习要点。 一、JSTL简介 JSTL是由Apache软件基金会的Jakarta项目维护的一个开源库,它提供了多种预定义的标签,用于处理常见的JSP任务,如...
1. **Core标签库**:提供了一系列与页面控制流相关的标签,例如`<c:if>`(条件判断)、`<c:forEach>`(迭代)、`<c:choose>`(选择结构)等,这些标签使得开发者可以更方便地在JSP页面上进行逻辑控制。 2. **Format...
- `<c:if>` 和 `<c:choose>`:条件判断。 - `<c:when>` 和 `<c:otherwise>`:选择结构。 - `<c:forLoop>` 和 `<c:forEach>`:循环操作。 - `<c:url>` 和 `<c:param>`:创建URL并添加参数。 - `<c:remove>`:移除一个...
**JSTL(JavaServer Pages Standard Tag Library)**是一个用于JSP应用的标准化标签库,旨在简化Web应用程序的表示层开发。它包含了多种用于常见任务的定制标签,比如迭代、条件判断、数据管理、XML处理和数据库访问...
- `<c:if>` 和 `<c:choose>`:条件判断标签,类似于编程语言中的 if-else 语句。 - `<c:forEach>` 和 `<c:forTokens>`:循环标签,处理数组、集合和字符串。 - `<c:redirect>` 和 `<c:forward>`:处理请求重定向...
例如`<c:if>`用于条件判断,`<c:forEach>`用于遍历集合,`<c:choose>`、`<c:when>`和`<c:otherwise>`用于多分支选择。 2. **Format/International化标签库 (fmt)**:提供了处理日期、时间、数字格式化以及国际化和...
例如,`<c:choose>`标签可以配合EL来做出基于变量值的条件判断。 总之,JSTL和EL是JSP开发中的重要工具,它们提升了代码的可读性和可维护性,减少了直接在页面中编写Java脚本的需求。正确导入和使用这两个库,可以...
1. **Core**:这是最基本的组件,提供了一系列的控制流标签,如迭代(`<c:forEach>`)、条件语句(`<c:if>`、`<c:choose>`)、URL重写(`<c:url>`)等。 2. **I18N & Format**:国际化和格式化组件,支持日期、时间...
- `<c:choose>`, `<c:when>`, `<c:otherwise>`:多条件判断 - `<c:forEach>`:迭代遍历集合 - `<c:set>`, `<c:remove>`:设置和移除变量 **SQL模块** 提供了与数据库交互的标签,如执行SQL查询、处理结果集等: - `...
例如,`<c:forEach>`用于遍历集合,`<c:if>`和`<c:choose>`用于条件判断。 **HTML标签库**:JSTL也提供了HTML标签库,可以用来生成HTML表单元素,比如`<html:form>`、`<html:text>`等。不过,随着前端框架的发展,...
**JSTL(JavaServer Pages Standard Tag Library)**是Java Web开发中的一种标准标签库,它为JSP页面提供了一套强大的、可扩展的标签,用于处理常见的JSP任务,如迭代、条件判断、XML处理等。JSTL的主要目标是减少在...
1. **JSTL核心库**:JSTL的核心库(`jstl.jar`)包含了执行常见Web任务的基本标签,如`<c:out>`用于输出变量,`<c:if>`和`<c:choose>`进行条件判断,`<c:forEach>`进行循环操作等。这些标签极大地提高了代码的可读性...
- `<c:choose>`、`<c:when>`、`<c:otherwise>`:多条件选择 - `<c:forEach>`:循环遍历 - `<c:set>`:设置变量 - `<c:remove>`:删除变量 - `<c:url>`、`<c:param>`:构建URL和添加参数 **3. JSTL fmt标签库** fmt...
- **条件语句**:`<c:if>` 和 `<c:choose><c:when><c:otherwise>` 用于实现条件判断。 - **迭代**:`<c:forEach>` 用于遍历集合或数组。 - **URL重写**:`<c:url>` 用于创建安全的URL,可以自动添加请求参数。 - **...
JSTL的核心库 (`标签库) 包含了许多用于处理数据的标签,例如 `<c:forEach>` 用于遍历集合,`<c:if>` 和 `<c:choose>` 用于条件判断,以及 `<c:set>` 和 `<c:remove>` 用于设置和移除变量。在购物车实现中,这些标签...
1. **了解核心标签**:包括`<c:if>`, `<c:choose>`, `<c:when>`, `<c:otherwise>`, `<c:forEach>`, `<c:forTokens>`等,它们分别对应条件判断和循环控制。 2. **掌握EL表达式**:EL(Expression Language)是JSP 2.0...
- `<c:choose>`, `<c:when>`, `<c:otherwise>` 提供了多分支选择结构。 - `<c:forLoop>` 和 `<c:forEach>` 用于迭代操作。 - `<c:set>`, `<c:remove>` 用于设置和移除变量。 - `<c:out>` 用于安全地输出数据,...
- `c:choose`, `c:when`, `c:otherwise`:多条件选择。 - `c:forEach`:循环遍历集合。 - `c:forTokens`:基于分隔符的遍历。 - `c:remove`:删除一个变量。 - `c:redirect`, `c:url`:URL重定向和构造。 - **...
JSTL Core库是JSTL中最基础的部分,它提供了许多与控制流程相关的标签,如`<c:if>`、`<c:choose>`、`<c:when>`、`<c:otherwise>`(条件判断)、`<c:forEach>`、`<c:forTokens>`(循环)、`<c:set>`、`<c:remove>`...
JSTL的核心库(core)包含了一系列用于控制流程的标签,如`<c:if>`、`<c:forEach>`、`<c:choose>`等。这些标签可以实现条件判断、循环、选择等逻辑操作,使得JSP页面的逻辑更加清晰。 - `<c:if>`:用于进行条件判断...