遍历XML数据岛数据

合集下载

操作XML数据岛数据

操作XML数据岛数据

操作XML数据岛数据在IE浏览器中,当为XML数据岛创建一个标识符ID的时,实际上就是创建了操作XML数据岛的数据源对象DSO。

此处DSO对象可以看作是一个DOM树模型的根节点,即将XML数据岛作为一个加载到内存中的树而处理。

DSO对象可以根据DOM的树模型结构对XML数据岛进行添加、删除和修改节点,其执行效果会显示在当前HTML页面的数据上面,但不会影响XML数据岛本身的数据改变。

下面创建一个案例,演示使用DSO对象操作XML数据岛数据。

首先创建XM将上述代码保存,名称为Example7.xml。

创建引入XML数据岛的HTML网页,将上述代码保存,名称为Example7.html。

直接双击该文件,会显示如图8-9所示窗口:图8-9 DSO操作XML数据岛单击【显示根节点名称】按钮,会调用JavaScript函数c(),其中代码“dos.doc umentElement.nodeName”表示获取根节点名称,dos为数据源对象,此处为DOM 树模型根节点,documentElement为元素根节点,nodeName表示节点名称属性。

其执行结果如图8-10所示。

图8-10 显示根节点单击【显示第一个子节点名称】,会调用JavaScript函数d()。

该函数中,代码“dos.documentElement.childNodes[0].childNodes[0].nodeName”表示获取第一个子节点名称,childNodes[0]表示元素子节点集合的第一个子节点,第一个childNodes[0]表示根节点(<图书列表>)的子节点(第一个<图书>节点)列表,第二个childNodes[0]表示第一个图书节点的第一个子节点(<标题>)。

如果要获取第一个图书节点的子节点的文本数据,还需要使用firstChild,因为文本数据节点是<标题>节点的子节点。

其执行结果如图8-11所示:图8-11 显示第一个子节点单击【增加节点】按钮,会调用add函数。

XML 数据岛数据分页显示

XML  数据岛数据分页显示
<td><div datafld="数学成绩"/></td>
</tr>
</table>
(6)创建分页表单元素,其代码为:
<body onload="ViewRecords()">
<input type="button" value="第一页" onclick="nput type="button" value="上一页" onclick="PrevPage()">
<input type="button" value="下一页" onclick="NextPage()">
<input type="button" value="最后一页" onclick="LastPage()">
(7)实现JavaScript函数,其代码为:
<script language = "JavaScript">
XML
利用DSO数据源对象,可以分页显示数据岛数据。此时是将DSO数据源对象作为ADO的RecordeSet记录集看待的,可以直接利用RecordeSet记录集提供的nextPage()和previousPage()实现分页显示。其实现步骤如下所示:
(1)分析程序。此程序难点在于理解RecordSet记录集,该程序可以分为两个部分,HTML网页和XML文件。
function ViewRecords()
{

XML简介

XML简介

XML简介XML可以用来描述数据,重点是‘数据是什么’。

HTML则是用来显示数据,重点是‘如何显示数据’。

在学习XML之前你应该已经知道的知识在你继续之前你应该具有下面一些基础的知识:▪WWW, HTML 和设计网页的基础知识▪网页脚本语言,比如JavaScript 或者VBScript你最好在学习XML之前就了解上面的内容,因为在XML的学习过程中将用到这些知识。

什么是XML?∙XML是E X tensible M arkup L anguage的缩写∙XML是一种类似于HTML的标记语言∙XML是用来描述数据的∙XML的标记不是在XML中预定义的,你必须定义自己的标记∙XML使用文档类型定义(DTD)或者模式(Schema)来描述数据∙XML使用DTD或者Schema后就是自描述的语言XML和HTML的主要区别是什么XML是用来存放数据的XML不是HTML的替代品,XML和HTML是两种不同用途的语言。

XML是被设计用来描述数据的,重点是:什么是数据,如何存放数据。

HTML是被设计用来显示数据的,重点是:显示数据以及如何显示数据更好上面。

HTML是与显示信息相关的, XML则是与描述信息相关的。

XML 什么也不做XML 被设计成什么都不做的。

也许看起来很难理解,但事实上XML确实什么都不做。

XML只是用来组织、存储和发送信息的。

下面的例子是Ordm给Lin的便条,使用的是XML格式:这个便条有信息头,又信息主体,还包括发送人和接收人。

尽管如此,这个XML 文档仍然什么都不做,他只是用XML标记存储信息的文件。

有人已经编写出来发送和接收并且显示这种格式信息的软件。

XML是自由的、可以扩展的XML标记并不是预先规定好的,你必须创造你自己的标记。

在HTML文档中必须使用规则中定义好的标记。

比如:<P><br><a></a>等等。

XML允许你定义自己的标记以及文档结构。

XML 数据岛排序

XML  数据岛排序
(6)实现JavaScript函数进行排序,其代码为:
<script language="JavaScript">
function sort(sortNode,sortOn)
{
var nodes = sortNode.selectNodes("学生");
for (var i = 0; i < nodes.length; i++)
break;
}}
}
}
</script>
(7)运行。直接双击该文件,会显示如图8-2所示窗口,单击【排序】按钮,会显示如图8-3所示窗口:
图8-2排序前数据显示8-3排序后数据显示
XML
将XML文件中的数据以一定顺序显示,可以使用样式表单文件XSL和数据岛技术。其中使用XML数据岛技术显示数据,需要在HTML网页中创建JavaScript代码。本练习目的熟悉XML数据岛的树结构(类似于DOM)。其实现步骤如下所示:
(1)分析程序
(2)实现XML文档,此文档继续使用练习1中的XML文档。
(3)创建HTML网页Example11.html。
(4)在Example11.html页面引入XML文件并绑定到具体元素上,其代码为:
<xml id="tab" src="Example11.xml"></xml>
<table datasrc="#tab" border="1" width="80%">
{
var node = nodes[i];
var rows = node.selectNodes("学生");

mybatis中,mapper.xml中遍历list集合知识点

mybatis中,mapper.xml中遍历list集合知识点

mybatis中,mapper.xml中遍历list集合知识点<select id="findAll" parameterType="java.util.List" resultType="string">select uid from user where uid in<foreach collection="list" index="index" item="item" open="(" separator="," close=")">#{item.uid,jdbcType=VARCHAR}</foreach>ORDER BY CREATE_DATE DESC</select>--------------------------------------------------------------------相关解释:foreach的主要⽤在构建in 条件中,它可以在sql语句中迭代⼀个集合;1.foreach元素的属性有item, index, collection, open, separator, close;item--->集合中每⼀个元素进⾏迭代的别名;index--->表⽰迭代过程中,每次迭代的位置,open--->该语句以什么开始;separator--->在每次进⾏迭代之间以什么符号作为分隔符;close--->以什么结束,在使⽤foreach的时候最关键的也是容易出错的就是collection属性,该属性是必须指定的,不同情况,属性值不同;有⼀下3中情况:①如果传⼊的是单参数且参数类型是⼀个List的时候,collection属性值为list;②如果传⼊的是单参数且参数类型是⼀个array数组的时候,collection的属性值为array;③如果传⼊的参数是多个的时候,我们就需要把它们封装成⼀个Map了;--------------------------------------------------------------------。

读写XML的四种方法

读写XML的四种方法

读写XML的四种方法XML(eXtensible Markup Language)是一种用于表示和传输数据的标记语言。

它具有良好的可读性和扩展性,被广泛应用于Web开发、数据交换和配置文件等领域。

在读写和处理XML数据时,有许多方法可供选择。

本文将介绍四种常见的读写XML的方法:DOM、SAX、JDOM、和XMLStreamReader/XMLStreamWriter。

1. DOM(Document Object Model):DOM是一种基于树形结构的解析器,它将整个XML文档加载到内存中,并将其表示为一个对象树。

在DOM中,每个XML元素都被表示为一个节点(Node),可以通过节点的属性和方法对其进行操作。

读取XML文档时,可以使用DOM解析器将其转换为一个DOM树,然后通过节点的方法访问和修改树结构。

写入XML文档时,可以通过创建和修改节点来构建DOM树,并使用DOM解析器将其保存为XML文档。

使用DOM读取XML文档的基本步骤如下:- 创建一个DocumentBuilderFactory对象。

- 根据DocumentBuilderFactory对象创建一个DocumentBuilder对象。

- 使用DocumentBuilder对象解析XML文档,并返回一个Document对象。

- 通过Document对象的方法遍历和操作XML文档的节点。

使用DOM写入XML文档的基本步骤如下:- 创建一个DocumentBuilderFactory对象。

- 根据DocumentBuilderFactory对象创建一个DocumentBuilder对象。

- 使用DocumentBuilder对象创建一个Document对象。

- 通过Document对象的方法创建和添加元素节点、属性节点等。

- 使用TransformerFactory和Transformer对象将Document对象保存为XML文档。

DOM的优点是易于使用和理解,可以方便地遍历和修改XML文档。

xml文件解析方法

xml文件解析方法

xml文件解析方法XML文件解析方法引言:XML(可扩展标记语言)是一种用于存储和传输数据的标记语言,它具有良好的可读性和灵活性,被广泛应用于数据交换和配置文件等领域。

在处理XML文件时,解析是必不可少的环节。

本文将介绍几种常用的XML文件解析方法,包括DOM、SAX和StAX。

一、DOM解析方法DOM(文档对象模型)是一种将整个XML文件以树形结构加载到内存中的解析方法。

DOM解析器将XML文件解析为一个树状结构,通过遍历节点来获取和操作XML文件中的数据。

DOM解析方法的优点是易于理解和使用,可以随机访问XML文件中的任意节点,但缺点是占用内存较大,不适用于大型XML文件的解析。

1. 创建DOM解析器对象:使用标准的Java API,可以通过DocumentBuilderFactory类来创建DOM解析器对象。

2. 加载XML文件:通过DOM解析器对象的parse()方法加载XML文件,将其转化为一个树形结构。

3. 遍历节点:使用DOM解析器对象提供的方法,如getElementsByTagName()、getChildNodes()等,可以遍历XML文件中的各个节点,获取节点的名称、属性和文本内容等信息。

4. 获取节点数据:通过节点对象提供的方法,如getNodeName()、getTextContent()等,可以获取节点的名称和文本内容。

二、SAX解析方法SAX(简单API for XML)是一种基于事件驱动的XML解析方法。

在SAX解析过程中,解析器顺序读取XML文件,当遇到节点开始、节点结束或节点文本等事件时,会触发相应的回调方法。

相比于DOM 解析方法,SAX解析方法具有内存占用小、解析速度快的优点,但缺点是无法随机访问XML文件中的节点。

1. 创建SAX解析器对象:使用标准的Java API,可以通过SAXParserFactory类来创建SAX解析器对象。

2. 实现事件处理器:自定义一个事件处理器,实现SAX解析器提供的DefaultHandler类,并重写相应的回调方法,如startElement()、endElement()和characters()等。

遍历 XML 文件所有节点的实例代码

遍历 XML 文件所有节点的实例代码

遍历XML 文件所有节点的实例代码这个示例演示如何载入一个XML 文件,然后遍历该XML 文件的所有节点,并用Textbox 显示该XML 文件每个节点第一个属性的值。

准备一个XML 文件准备一个XML 文件,内容如下,将其存为C:\menu.xml。

<?xml version="1.0" encoding="UTF-8"?><menu name ="1"><menu name ="1.1"/><menu name ="1.2"><menu name ="1.2.1"/><menu name ="1.2.2"/><menu name ="1.2.3"><menu name ="1.2.3.1"/><menu name ="1.2.3.2"/><menu name ="1.2.3.3"/></menu><menu name ="1.2.4"/></menu><menu name ="1.3"><menu name ="1.3.1"/><menu name ="1.3.2"/></menu><menu name ="1.4"/><menu name ="1.5"/></menu>创建项目(Project) 和添加控件打开Visual Studio 2005。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

遍历XML数据岛数据
我们知道,通过数据源对象DSO可以对数据岛节点进行显示、查询、修改、删除和添加等操作,这些操作的依据是建立在树模型的基础之上的。

除此之外,DS O还可以把XML数据岛作为ADO记录集进行处理,这样做的好处是可以利用AD O提供的各种方法对数据源进行访问,尤其是当把数据岛与类似SPAN、DIV和IN PUT等HTML元素绑定时。

通常这些元素显示的是记录集的首条记录,要想对记录集进行遍历浏览,一个是使用前面我们讲到的表格对象绑定,另外一个是可以使用ADO的方法结合脚本程序完成相应的浏览数据的功能。

比如创建一个按钮响应函数,只要用户点击“Next”按钮,就可以逐条浏览相应的记录。

除了显示记录数据之外,脚本程序还可以对记录集进行快速查询、排序、编辑等操作。

但要指出的是,虽然ADO技术中提供了类似SortColumn和SortAscendin g等方法对XML数据进行排序,但是效果不如XSL中的排序操作,所以建议大家充分利用XSL技术来实现这部分功能。

当DSO数据源对象作为一个记录集对象来看待的时候,该记录集对象RecordS et具有下面几个常用的属性和方法,如表8-1所示:
现在创建一个案例,使用上述方法和属性遍历XML数据岛数据。

首先创建X
将上述代码保存,名称为Example8.xml。

创建引入XML数据岛的HTML页面,
将上述代码保存,名称为Example8.html。

直接双击该文件,会显示如图8-15所示窗口:
图8-15 遍历XML数据岛数据
在该案例中,首先引入XML文件Example8,即创建数据岛对象dso。

当单击按钮时,会调用相应的JavaScript方法显示数据。

在JavaScript脚本程序中,移动到第一条记录使用moveFirst()方法,向下移动一条使用moveNext()方法,移动到最后一条使用moveLast()方法,向上移动一条记录使用movePrevious()方法。

在移动记
录的时候,应注意记录的开始位置和末尾。

相关文档
最新文档