ITKeyword,专注技术干货聚合推荐

注册 | 登录

Java Web学习(26): JSTL学习(四)

erlian1992 分享于 2016-07-29

推荐:Java Web学习(23): JSTL学习(一)

        一JSTL概述        (1)什么是JSTL        JSTL是Java中的一个定制标记库集。JSP标准标签库(JSTL)是一个JSP标签集合,它封装了JSP应用的通用核心功 能。J

2019阿里云全部产品优惠券(新购或升级都可以使用,强烈推荐)
领取地址https://promotion.aliyun.com/ntms/yunparter/invite.html

<c:choose>标签、<c:when>标签和<c:otherwise>标签

<c:choose>就像Java switch语句,它可以让你选择一些替代方案品。正如switch语句case语句,<c:choose>标 签有<c:when>的标签。一个switch语句中有default子句来指定一个默认的行动同样的方式<c:choose>有 <c:otherwise>作为默认子句。

通常这三个标签被放在一起使用。<c:choose>标签嵌套在<c:when>标签和<c:otherwise>标签的外面作为他们 的父标签来使用;其中<c:choose>标签和<c:when>标签也可以一起组合使用。

<c:choose>标签没有任何属性。<c:when>标记有一个属性,下面列出了。<c:otherwise>标签没有任何属性。

<c:when>标记具有以下属性:

语法结构一:同时使用<c:choose>标签、<c:when>标签和<c:otherwise>标签

结构: <c:choose>

<c:when test="判断条件1" >

//业务逻辑

</c:when>

<c:when tes="判断条件2" >

//业务逻辑

</c:when>

...

<c:otherwise>

//业务逻辑

</c:otherwise></c:choose>

实例代码: <%@ page language="java" contentType="text/html; charset=UTF-8"

pageEncoding="UTF-8"%><!-- 导入JSTL标签库 --><%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>JSTL使用</title></head><body>

<h1>JSTL标签的使用</h1>

<hr>

<!-- 标签的用法 -->

<form action="NewFile.jsp" method="post">

<input type="text" name="score" value="${param.score}" />

<input type="submit" />

</form>

<c:choose>

<c:when test="${param.score>=90&&param.score<=100}">

<c:out value="优秀" />

</c:when>

<c:when test="${param.score>=80&&param.score<90}">

<c:out value="良好" />

</c:when>

<c:when test="${param.score>=70&&param.score<80}">

<c:out value="中等" />

</c:when>

<c:when test="${param.score>=60&&param.score<70}">

<c:out value="及格" />

</c:when>

<c:when test="${param.score>=0&&param.score<60}">

<c:out value="不及格" />

</c:when>

<c:otherwise>

<c:out value="你的输入有问题!" />

</c:otherwise>

</c:choose></body></html>

结果:

语法结构二:只使用<c:choose>标签和<c:when>标签

结构: <c:choose>

<c:when test="条件" />

表达式

</c:when> </c:choose>

实例:

在上面的代码中加上以下代码:

结果:

<c:forEach>标签

存在这些标签嵌入Java的一个很好的选择,让while或do-while循环通过脚本。<c:forEach>标签是常用的标 签,因为它遍历对象的集合。

<c:forEach>标记有以下属性:

推荐:Java Web 第10天 EL和JSTL 1

一、 什么是 EL ?为什么要使用 EL ? EL ,即 JSP 表达式语言( expression_r_r Language ),它允许我们使用更简洁、更易读懂的语法来取代难以维护的 Java 脚

<c:forEach>标签的用法:

根据循环条件遍历集合(Collection)中的元素。

var属性是设定变量名用于存储从集合中取出元素(必须无默认值);

items属性是指定要遍历的几个(必须无默认值);

begin属性和end属性是用于指定遍历的起始位置和终止位置(有默认);

step属性指定循环的步长(有默认);

varStatus属性通过index、count、first和last几个状态值,描述begin和end子集中的元素的状态。

常用用法一:全部遍历 <c:forEach var="存储当前遍历元素的变量" items="待遍历集合" >

操作var变量表示的元素<br/> </c:forEach>

实例代码: <%@page import="java.util.ArrayList"%><%@page import="java.util.List"%><%@ page language="java" contentType="text/html; charset=UTF-8"

pageEncoding="UTF-8"%><!-- 导入JSTL标签库 --><%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>JSTL使用</title></head><body>

<h1>JSTL标签的使用</h1>

<hr>

<%

List<String> fruits = new ArrayList<String>();

fruits.add("apple");

fruits.add("orange");

fruits.add("pear");

fruits.add("watermelon");

fruits.add("banana");

fruits.add("grape");

request.setAttribute("fruits",fruits);

%>

<!--用法一:全部遍历 -->

<c:forEach var="fruit" items="${fruits}" >

<c:out value="${fruit}" /><br/>

</c:forEach>

<c:out value="==========================" /></body></html>

结果:

常用用法二:部分遍历 <c:forEach var="存储当前遍历元素的变量" items="待遍历集合" begin="开始遍历元素的index值" end="结束遍历的元素的index值" >

操作var变量表示的元素<br/> </c:forEach>

上面实例加上以下代码:

结果:

常用用法三:部分遍历并且指定步长 <c:forEach var="存储当前遍历元素的变量" items="待遍历集合" begin="开始遍历元素的index值" end="结束遍历的元素的index值" step="部分遍历中每次遍历的间隔元素个数" >

操作var变量表示的元素<br/> </c:forEach>

上面实例加上以下代码:

结果:

常用用法四:部分遍历时输出元素的状态 <c:forEach var="存储当前遍历元素的变量" items="待遍历集合" begin="开始遍历元素的index值" end="结束遍历的元素的index值" step="部分遍历中每次遍历的间隔元素个数" varStatus="指定一个变量用来存储当前元素的状态值" >

操作var变量表示的元素<br/> </c:forEach>

上面实例加上以下代码:

结果:

<c:foTokens>标签

<c:forTokens>标签是用来打破的字符串令牌和遍历每个标记。<c:forTokens>标签有类似<c:forEach>的属性, 除了一个额外的属性delims指定要使用的字符作为分隔符。

<c:forTokens>标签的用法:

用于浏览字符串,并根据指定的字符将字符串截取。

items属性用于指定迭代的字符串;

delims属性指定使用的分隔符;

var属性用来指定存放遍历到的成员;

begin属性指定遍历的开始位置(int型从取值0开始);

end属性是指定遍历的结束位置(int型,默认集合中最后一个元素);

step属性指定循环的步长(大于0的整型);

varStatus属性通过index、count、first和last几个状态值,描述begin和end子集中的元素的状态。

实例:

结果:

对于其他的属性可以自行进行设置与验证。

推荐:Java Web 第10天 EL和JSTL 2

四、JSTL的用法 在平常的使用中我们一般利用 EL 控制变量以及变量的输出,利用 JSTL 控制算术逻辑。 JSTL 是一种标记。 1.       JSTL 的导入                  

       <c:choose>标签、<c:when>标签和<c:otherwise>标签        <c:choose>就像Java switch语句,它可以让你选择一些替代方案品。正如switch语句case语句,<c:choose>标 签有<c:when>的标签。

相关阅读排行


用户评论

游客

相关内容推荐

最新文章

×

×

请激活账号

为了能正常使用评论、编辑功能及以后陆续为用户提供的其他产品,请激活账号。

您的注册邮箱: 修改

重新发送激活邮件 进入我的邮箱

如果您没有收到激活邮件,请注意检查垃圾箱。