JSTL核心标签库之简单介绍(续)

本文详细解析了JSTL标签库中循环控制标签和URL操作标签的功能与用法,包括<c:forEach>、<c:forTokens>、<c:import>、<c:redirect>和<c:url>的详细说明与示例,旨在帮助开发者掌握JSTL标签库的高效使用技巧,简化页面开发与维护。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

上篇文章中简单的介绍了JSTL核心标签库,其中还有两类并没有介绍完,这篇文章会把遗留的两类进行一下讨论。废话不多说,直接进入正题。


循环控制标签

循环控制标签主要实现迭代操作,主要包含两个标签:<c:forEach>和<c:forTokens>。

1. <c:forEach>标签

【功能】:

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


【语法】:

<c:forEach var=”name” items=”Collection” varStatus=”StatusName” begin=”begin” end=”end” step=”step”>

本体内容

</c:forEach>


varStatus的4个状态:


2. <c:forTokens>标签

【功能】:

该标签主要用于浏览字符串,并根据指定的字符将字符串截取。

【语法】:

<c:forTokens items=”strigOfTokens” delims=””delimiters [var=”name” begin=”begin” end=”end” step=”len” varStatus=”statusName”] >
【参数说明】:

(1)items指定被迭代的字符串

(2)delims指定使用的分隔符

(3)var指定用来存放遍历的成员

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

(5)end指定遍历结束的位置(Intel型,默认集合中最后一个元素)

(6)step遍历的步长(大于0 的整型)

(7)varStatus存放遍历到的成员的状态信息

(8)<c:forTokens>的属性varStatus的使用同<c:forEach>的使用方法相同

ps

在实际使用中,会加入分隔符,分隔符的作用是根据标识,截取字符串。如果未设定分隔符或在字符串中没有找到分隔符,将把整个字符串作为一个元素截取。


URL操作标签

JSTL包含3个与URL操作有关的标签,分别为:<c:import>、<c:redirect>和<c:url>标签。他们的作用为:显示其他文件的内容、网页导向、产生URL。

1. <c:import>标签

【功能】:

该标签可以把其他静态或动态文件包含到本JSP页面。

与<jsp:include>的区别为:只能包含同一个web应用中的文件,而<c:import>可以包含其他web应用中的文件,甚至是网络上的资源。

【语法】:

    语法1:

<c:import url=”url” [context=”context”][ value=”value”]

[scope=”page|request|session|application”] [charEncoding=”encoding”]>

    语法2:

<c:import url=”url” varReader=”name” [context=”context”][charEncoding=”encoding”]>


标签参数说明:


2. <c:redirect>标签

【功能】:

该标签用来实现了请求的重定向。同时可以在url中加入指定的参数。例如:对用户输入的用户名和密码进行验证,如果验证不成功重定向到登录页面,或者实现web应用不同模块之间的衔接。

【语法】:

     语法1

<c:redirect url=”url” [context=”context”]>

     语法2

<c:redirect url=”url”[context=”context”]>

<c:param name=”name1” value=”value1”>

</c:redirect>
【参数说明】:

(1)url指定重定向页面的地址,可以是一个string类型的绝对地址或相对地址

(2)用于导入其他web应用中的页面

3. <c:url>标签

【功能】:

该标签用于动态生成一个String类型的URL,可以同<c:redirect>标签共同使用,也可以使用HTML的<a>标签实现超链接。

【语法】:

【语法1】:指定一个url不做修改,可以选择把该url存储在JSP不同的范围中。

<c:url value=”value” [var=”name”][scope=”page|request|session|application”]

[context=”context”]/>

【语法2】:给url加上指定参数及参数值,可以选择以name存储该url。

<c:url value=”value” [var=”name”][scope=”page|request|session|application”]

[context=”context”]>

<c:param name=”参数名” value=”值”>

</c:url>


结束语

说了这么多的JSTL标签,我觉得之所以在Jsp中引入JSTL标签,主要是为了使jsp完成单一的显示界面的功能,将java代码从页面中隔离;将业务逻辑封装到JSTL中,可以很方便的复用;将数据与显示分离,从而简化页面,更利于系统的维护。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值