核心标签库
它是JSTL中的核心库,为日常任务提供通用支持,如显示和设置变量、重复使用一组项目、测试条件和其他操作(如导入和重定向Web内容)。Core标签按功能可分为4种类型:
1 变量维护:
(1)<c:set>:设置变量值和对象属性。语法如下:
<c:set value="值" var="变量名" scope="变量的作用域" target="对象名" property=" 对象属性名"></c:set>
每种设置都有两种方式,总结起来,<c:set>的4种形式,如下所示:
a. 使用标记属性设置JSP变量
<c:set value="值" var="变量名" scope="作用域"/>
b. 使用标记体设置JSP变量
<c:set var="变量名" scope="作用域">标记内容</c:set>
c. 使用标记属性设置对象属性
<c:set value="变量名" target="对象名" property="对象属性名"/>
d. 使用标记体设置对象属性
<c:set target="对象名" property="作用域">标记内容</set>
(2)<c:remove>:在指定作用域范围内删除变量。语法如下:
<c:remove var="变量名" scope="作用域"/>
2 流程控制:分为条件标签和迭代标签。
条件标签:<c:if> <c:choose> <c:when> <c:otherwise>
(1)<c:if>:与Java语言中的if语句的使用方法一样,但不能实现else的功能。
<c:if>标签有两种语法形式,是以有无标记体来区分的。
无标签体:
<c:if test="测试条件" var="变量名" [scope="作用域"]/>
有标签体:
<c:if test="测试条件" var="变量名" [scope="作用域"]>
标签体
</c:if>
带标记体的<c:if>
<c:if test="${user.visitCount!=0}">欢迎光临</c:if>
(2)<c:choose> <c:when> <c:otherwise>
<c:when> <c:otherwise>无法单独使用,只能作为<c:choose>的子标签来使用。这三个标签组合起来实现Java中的switch语句的功能。语法如下:
<c:choose>
<c:when test="${user.class==’guest’}">
标签体1
</c:when>
<c:when test="${user.class==’vip’}">
标签体2
</c:when>
<c:otherwise>
标签体3
</c:otherwise>
</c:choose>
迭代标签:<c:forEach> <c:forTokens>
(1)<c:forEach>:用于遍历一个对象集合。
<c:forEach var="变量名" items="集合" varStatus="遍历状态名"
begin="begin" end="end" step="step" >
标签体
</c:forEach>
(2)<c:forTokens>:用于遍历字符串,而且每次遍历结果返回字符串中的一个单词。
<c:forTokens items="字符串" delims="分界符" var="变量名"
varStatus="遍历状态名" begin="begin" end="end" step="sep">
标签体
</c:forTokens>
3 URL管理
(1)<c:url>:用于对URL地址进行编码。
有标签体:
<c:url value="URL" context="路径" var="变量名" scope="作用域">
标签体
</c:url>
如下代码:
<c:url value="http://localhost:8080/el/index.jsp" var="NewURL">
<c:param name="name" value="zero"/>
<c:param name="age" value="28"/>
</c:url>
<a href="${NewURL}">点我呀</a>
生成的URL:http://localhost:8080/el/index.jsp?name=zero&age=28
无标签体:主要用于编辑上下文URL。
<c:url value="URL" context="路径" var="变量名" scope="作用域"/>
如下代码:
<c:url value="/logon.jsp">登录</c:url>
若当前路径为el,则输出为:/el/logon.jsp
(2)<c:import>:向当前JSP页面中引入URL资源(可以是远程序站点上的资源)。Include指令和include动作不能向JSP页引入Web程序以外的资源,引入的资源必须位于当前Web程序中。
以String对象引入的语法:
<c:import url="地址" context="上下文路径" var="变量名"
scope="作用域" charEncoding="字符集">
标签体使用<c:param>
</c:import>
如下代码:将外部资源引入到当前JSP页面中.
<c:import url="http://www.hao123.com" var="myurl" charEncoding="gb2312">
</c:import>
<a href="${myurl }">地址</a>
以Reader对象导入的语法:
<c:import url="地址" context="上下文路径" varReader="变量名"
scope="作用域" charEncoding="字符集">
标签体使用其它动作元素
</c:import>
(3)<c:redirect>:用于HTTP重定向。
无标签体:
<c:redirect url="地址" context="上下文路径"/>
有标签体:
<c:redirect url="地址" context="上下文路径">
<c:param/>标签
</c:redirect>
(4)<c:param>:只能嵌入到<c:url>、、<c:import>、<c:redirect>标签中作为子元素来使用。此标签主要用于设置URL中将要传入的参数。
无标签体:
<c:param name="名称" value="值"/ >
有标签体:
<c:param name="名称" value="值" >
标签体
</c:param>
4 其它标签:<c:out>、<c:catch>。
(1)<c:out>:在JSP页面中显示变量内容。
无标签体:
<c:out value="值" escapeXml="{true|false}" default="默认值"/>
有标签体:
<c:out value="值" escapeXml="{true|false}" default="默认值">
标签体
</c:out>
其中:
default: 用于指定当value值为null时,应该输出的值。
escapeXml: 用于设置是否将"<"、">"、"&"、"’"、"""、这些字符进行转义。
escapeXml默认为true,表示发生转换。
"<"转换成"<"
">"转换成">"
"&"转换成"&"
"’"转换成"'"
"""转换成"""
(2)<c:catch>:用于处理JSP页面错误。
如果JSP页面出错,可以通过对page指令属性的设置将其转到错误处理页面上。<c:catch>标签是对这种错误处理的补充。它的处理方式是将可能发生异常的JSP代码片段嵌入到标记体内,然后使用var属性心不烦接收标记体抛出的异常。
<c:catch var="变量名">
嵌套动作
</c:catch>
使用方法:
<c:catch var="myexception">
嵌套动作
</c:catch>
<c:if test="${myexception!=null}">
内容
</c:if>
参考:
http://www.gbsou.com/2009/10/12/1028.html
http://www.cnblogs.com/programwjy/archive/2010/09/06/1818794.html
分享到:
相关推荐
例如,你可以创建一个显示用户信息的标签,然后在多个页面中使用。 三、JSP动作标签和声明式编程 JSP 页面中的标签有两种类型:动作标签(Action Tags)和声明式标签(Declarative Tags)。动作标签以`<jsp:`开头...
在JavaServer Pages (JSP) 开发中,我们经常需要对HTML表格进行操作,比如动态合并单元格。这里,我们将深入探讨如何利用JSP中的C标签...记得在使用时导入必要的JSTL库,并确保JSP页面配置正确,才能正常使用C标签。
在JSP页面中使用C标签库之前,需要首先引入JSTL库和C标签库。这通常通过在JSP页面头部添加以下`<%@ taglib %>`指令来完成: ```jsp <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> ``` ...
在JSP页面中,Java标签库扮演着至关重要的角色,它允许开发者使用预先定义好的标签执行各种操作,例如数据输出、流程控制、迭代处理以及异常处理等。 JSP自带的核心标签库中,包含了许多用于简化Web开发的标签。...
要在JSP项目中使用C标签库,你需要按照以下步骤操作: 1. **下载JAR包**:从可靠的源(如Apache官方网站)下载最新版本的jstl.jar和standard.jar。 2. **添加到类路径**:将这两个JAR文件放入项目的WEB-INF/lib...
在这个项目示例中,我们将深入探讨如何使用这些技术将MySQL数据库中的数据呈现到JSP页面上。 首先,我们需要了解Servlet。Servlet是Java平台上的一个标准接口,用于扩展服务器的功能,特别是处理HTTP请求。在本项目...
接下来,我们来看一下如何在JSP页面中使用C标签: 1. 引入JSTL库:在JSP页面顶部添加以下指令,引入JSTL库: ```jsp <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> ``` 这里的`prefix="c"`是...
JSP 提供了一些内置对象,如 `pageContext`、`request`、`response` 等,它们可以直接在JSP页面中使用,无需声明。这些对象可以方便地访问HTTP请求、响应以及上下文信息。 4. **动作标签(Action Tags)** 例如 `...
在JSP页面中,C标签库(Core Library)提供了许多用于处理基本操作的功能,如迭代、条件判断、字符串操作等。 ### JSTL简介 JSTL由五个核心库组成: 1. **Core库**:提供控制流操作,如循环、条件判断。 2. **...
综上所述,JSP 页面中进行字符串截取可以通过多种方式实现,包括直接使用 Java 的 `String` 类方法、EL 表达式、JSTL 标签库以及 JavaScript。根据实际需求和项目结构,选择最适合的方法进行字符串处理。在学习过程...
JSTL还提供了条件判断标签,如`<c:if>`和`<c:choose>`,以及循环标签`<c:forEach>`等,这些都极大地简化了JSP页面中的逻辑处理。例如,使用`<c:forEach>`遍历一个集合: ```jsp <c:forEach items="${list}" var=...
JSP标准标签库)是Java社区为了简化JSP开发而提出的一个标准,它提供了一系列的标签来处理常见的任务,如迭代、条件判断、XML处理等,旨在减少Java代码在JSP页面中的使用,提高代码的可读性和维护性。C标签库是JSTL...
为了在JSP页面中使用JSTL提供的标签,还需要通过`<%@ taglib %>`指令进行导入。具体来说,可以在JSP页面顶部使用以下代码: ```jsp <%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> ``` 这里`...
本案例聚焦于一个特定的问题:在MyEclipse 2017中,当在JSP页面中使用`<c:if>`标签时,导致其后面的代码显示颜色异常,即一半是黑色,一半是彩色。这个问题主要涉及到两个核心技术点:JSP和`<c:if>`标签。 首先,...
使用JSTL标签库能够提高JSP页面的可读性和维护性,避免在JSP页面中嵌入大量的Java代码,同时也可以利用JSTL提供的国际化标签库(i18n)进行本地化开发。 在JSTL的早期版本中,由于标签库的资源定位是通过硬编码的...
这些标签帮助开发者避免在JSP页面中直接使用脚本元素,提高代码的整洁度。 2. **Format库**:这个库提供了处理日期、数字、货币格式化等功能,如`<fmt:formatDate>`、`<fmt:formatNumber>`等,有助于实现国际化和...
开发者可以定义标签的属性、事件和行为,然后在JSP页面中使用。 3. JSP动作标签: JSP动作标签以`<jsp:` 开头,如 `<jsp:include>`、`<jsp:forward>` 和 `<jsp:params>`。这些标签用于执行服务器端的操作,比如...
在JSP中使用百度地图API,我们需要在页面中引入相关的JavaScript库,这通常通过在标签内添加标签完成,确保引入百度地图的CDN链接。 接着,我们需要在SpringMVC的控制器中处理经纬度数据。这可能涉及到从前端获取...
在上面的代码中,我们使用了我们的自定义标签来格式化时间戳字符串,并将格式化后的时间字符串输出到jsp页面中。 在jsp页面中将时间戳字符串格式化为时间标签可以通过使用自定义标签来实现。我们可以通过定义date...
在JSP页面中,主要由三类元素构成:JSP标签、Java程序片和HTML标签。下面将详细阐述这三个组成部分及其相关知识点。 1. **JSP标签** JSP标签主要用于控制页面的属性和行为。它们是JSP的核心特性,分为指令标签、...