JSTL XML processing 标签库:为程序设计者提供了基本的对 XML 格式文件的操作
被分为了三类,分别是:
XML 核心标签: <x:parse> 、 <x:out> 、 <x:set>
XML 流控制标签: <x:if> 、 <x:choose> 、 <x:when> 、 <x:otherwise> 、 <x:forEach>
XML 转换标签: <x:transform> 、 <x:param>
1.<x:parse> 标签:解析 XML 文件
属性描述
doc:源 XML 的内容,该属性的内容应该为String类型或者java.io.Reader的实例,可以用xml属性来替代,但是不推荐
var:将解析后的XML保存在该属性所指定的变量中,之后XML processing标签库中的其他标签若要取XML中的内容就可以从该变量中得到(可选)
scope:变量的作用范围(可选)
varDom:指定保存的变量为 org.w3c.dom.Document 接口类型(可选)
scopeDom:org.w3c.dom.Document 的接口类型变量作用范围(可选)
systemId:定义一个URI,该URI将被使用到XML文件中以接入其他资源文件(可选)
filter:该属性必须为 org.xml.sax.XMLFilter 类的一个实例,可以使用EL表达式传入,将对 XML 文件做过滤得到自身需要的部分(可选)
其中,var、scope和varDom、scopeDom不应该同时出现,而应该被视为两个版本来使用,二者的变量都可以被 XML processing 标签库的其他标签来使用
如:导入本地的xml文件并用<x:parse> 标签进行解析
<x:parse var="sampleXML">
<c:import url="/sample.xml" />
</x:parse>
2.<x:out> 标签
属性描述
select:XPath语句
escapeXml:是否转换特殊字符,默认为true
如,输出下面xml文件中name的值:
<x:parse var="sampleXML">
<goods>
<item id="1">
<name>b</name>
<price>40</price>
</item>
</goods>
</x:parse>
<x:out select="$sampleXML/goods/item/name"/>
3.<x:set>标签
属性描述
select:XPath语句
var:将从XML文件中取得的内容存储到varName中
scope:变量范围
如,取出item节点,再用<x:out> 标签输出它的子节点的值:
<x:set select="$sampleXML//item" var="item"/>
<x:out select="$item/name" />
4.<x:if>标签
属性描述
select:XPath语句,如果为true,则执行<x:if>中的内容
var:将从XML文件中取得的内容存储到varName中
scope:变量范围
如:当存在item的id属性为1的节点时输出right!
<x:if select="$sampleXML/goods/item[@id=1]/name">
right!
</x:if>
5.<x:choose>、<x:when>和<x:otherwise>标签
与core标签的内容一样,只是<x:when>使用的XPath语句,其他两个都没有属性
如:当存在item的id属性为1的节点时输出right!,否则输出wrong
<x:choose>
<x:when select="$sampleXML/goods/item[@id=1]/name">
right!
</x:when>
<x:otherwise>
wrong!
</x:otherwise>
</x:choose>
6.<x:foreach>标签,与<c:forEach>相似
属性描述
var:设定变量存储到现在浏览到的节点
select:XPath语句,决定被浏览的部分
varStatus:存放现在指导的相关成员信息
begin:开始位置
end:结束位置
step:每次迭代的间隔数
如:输出所有item的name属性
<x:parse var="sampleXML">
<goods>
<item id="1">
<name>a</name>
<price>10</price>
</item>
<item id="2">
<name>b</name>
<price>20</price>
</item>
</goods>
</x:parse>
<x:forEach select="$sampleXML//item">
<x:out select="name" />
</x:forEach>
7.<x:transform>标签:使用XSLT重新包装XML文件
属性描述
doc:XML文件
xslt:要套用的XSLT样式
docSystemId:XML文件的URI
result:转换结果的对象
xsltSystemId:XSLT文件的URI
var:存放转换后的文件
scope:var变量的范围
xml:
xmlSystemId:
如:
<c:import var="xmlDoc" url="${xmlUrl}" />
<c:import var="xsltStyleSheet" url="${xsltUrl}" />
<x:transform doc="${xmlDoc}" xslt="${xsltStyleSheet}">
8.<x:param>标签:用来设置<x:transform>的参数
属性描述
name:参数名称
value:参数值
分享到:
相关推荐
**第三章:JSTL XML processing 标签库** 这一章主要介绍如何使用JSTL处理XML数据,包括解析、查询、转换等功能,但具体内容未在提供的摘要中给出。 通过学习JSTL,开发者可以有效地提升JSP页面的可读性和可维护性...
2. **XML标签库 (XML Processing Tag Library)** - URI: `http://java.sun.com/jstl/xml` - 前缀: `x` - 示例: `<x:forEach>` - 功能: 支持XML文档的处理。 3. **I18N格式标签库 (Internationalization Tag ...
### JSTL C标准标签库概述 JSTL(JavaServer Pages Standard Tag Library),即JavaServer Pages标准标签库,是一个不断完善的开源项目,由Apache的Jakarta小组维护。该标签库旨在提供一套标准且功能丰富的标签集合...
JSTL,即JavaServer Pages Standard Tag Library(JavaServer页面标准标签库),是为简化JSP页面开发而设计的一组自定义标签库。自JSP 1.1版本开始,JSP支持自定义标签,而JSTL则提供了更为丰富和强大的标签功能。...
##### XML processing标签库 - **URI**:`http://java.sun.com/jstl/xml` - **前缀**:`x` - **示例**:`<x:tagname>` ##### I18N capable formatting标签库 - **URI**:`http://java.sun.com/jstl/fmt` - **前缀**...
2. **XML处理标签库(XML processing)** 这个库主要用于XML文档的处理,如XSLT转换、XML节点的操作等。标签如`<x:parse>`用于解析XML文档,`<x:out>`用于输出XML内容。 3. **国际化格式化标签库(I18N capable ...
在JSTL 1.1中,Core库是五个可用标签库之一,包括Core、XML Processing、I18N Formatting、Database Access和Functions库。每个库都有其特定的URI和前缀,例如Core库的URI为`http://java.sun.com/jsp/jstl/core`,...
2. XML processing库:用于处理XML文档,如解析、验证和操作XML数据。`<x:parse>`、`<x:transform>`等标签可以帮助开发者进行XML操作。 3. I18N capable formatting库(国际化格式化库):提供日期、时间、数字的...
2. **XML processing标签库**:专门用于处理XML文档。 3. **I18N formatting标签库**:支持国际化与格式化功能。 4. **Database access标签库**:用于数据库访问操作。 5. **Functions标签库**:包含一系列通用函数...
- **XML processing标签库**:处理XML文档,如解析、验证和转换。 - **I18N capable formatting标签库**(fmt):支持国际化和格式化输出。 - **Database access (SQL)标签库**:用于JSP页面与数据库的交互,执行...
【JSTL标签库介绍】 JSTL,全称JavaServer Pages Standard Tag Library,是一个开源的JSP标签库,由Apache Jakarta项目维护。这个库旨在提高JSP开发的效率和可读性,通过提供一系列预定义的标签,使得开发者可以...
2. **XML processing 标签**:用于处理XML文档。 3. **I18N capable formatting 标签**:支持国际化和格式化。 4. **Database access (SQL) 标签**:提供数据库操作接口。 #### EL (Expression Language) 介绍 EL ...
在Java世界中,JSTL(JavaServer Pages Standard Tag Library)是一个标准标签库,它提供了一系列的标签来简化JSP页面中的常见任务,包括XML处理。JSTL的XML部分称为JSTL XML(JSTL XML Core),它允许开发者在JSP...
- **支持XML处理**:JSTL可以很好地处理XML文档,与JAXP(Java API for XML Processing)结合使用。 在实际项目中,通常与EL(Expression Language)一起使用,EL负责表达式计算,而JSTL则处理控制流和输出。两者...
在JSTL 1.1版本中,提供了五个主要的标签库,分别是Core、XML processing、I18N formatting、Database access和Functions。每个库都有特定的URI和前缀,方便在JSP页面中引用。 Core标签库是JSTL的基础,包含了处理...
2. **XML processing**: 提供处理XML文档的标签,帮助开发者解析和操作XML数据。 - `<x:parse>` 用于解析XML字符串 - `<x:transform>` 用于XSLT转换 - `<x:out>` 显示XML数据 3. **I18N capable formatting**: ...
2. **XML处理标签库(XML processing)**:用于解析和操作XML文档。 - URI前缀:`http://java.sun.com/jstl/xml` - 标签名前缀:`x:` 3. **国际化与格式化标签库(I18N capable formatting)**:提供日期、数字等...
2. **XML Processing** - 支持XML文档的处理。 3. **Internationalization and Formatting** - 提供国际化和格式化功能。 4. **Database Access (SQL)** - 支持JSP页面对数据库的操作。 #### Core标签库详解 本文...
- **XML processing 标签库**:处理 XML 数据。 - **I18N formatting 标签库**:处理国际化格式化问题。 - **Database access 标签库**:提供数据库访问能力。 - **Functions 标签库**:提供常用函数。 每个标签库...