java dom是什么 北大青鸟java培训:什么是DOM
老铁们,大家好,相信还有很多朋友对于java dom是什么和北大青鸟java培训:什么是DOM的相关问题不太懂,没关系,今天就由我来为大家分享分享java dom是什么以及北大青鸟java培训:什么是DOM的问题,文章篇幅可能偏长,希望可以帮助到大家,下面一起来看看吧!
简述java中dom操作和sax操作的区别
分别解释如下:
DOM,即Document Object Model,中文叫文档对象模型。DOM是W3C定义的标准文档对象模型,是一个与操作系统和编程语言无关的、用于内存存储和操作层次化文档的模型。当按照DOM模型解析XML文档时,就会在内存中构造一个对应的DOM树,它可以用于不同节点之间的遍历。然而,在遍历之前必须先完成DOM树的构造。因此,在处理规模较大的XML文档时就很耗内存,占用资源较多。尤其是只需要操作文档中一小部分时效率很低。
SAX,即Simple API for XML的简称,中文叫XML简单应用程序接口。它是一个事实上的标准。与DOM不同的是,它是用事件驱动模型。解析XMl文档时每遇到一个开始或者结束标签、或者属性、或者一条指令时,程序就产生一个事件来进行相应的处理。所以在操作文档之前不需要对整个文档进行解析。实际上,文档的各个部分可以在进行解析的同时进行操作。因此,SAX相对于DOM来说更适合操作大文档。
网页技术中dom是什么
1.文档对象模型(DOM)
DOM是HTML和XML文档的编程基础,它定义了处理执行文档的途径。编程者可以使用DOM增加文档、定位文档结构、填加修改删除文档元素。W3C的重要目标是把利用DOM提供一个使用于多个平台的编程接口。W3C
DOM被设计成适合多个平台,可使用任意编程语言实现的方法。
2.节点接口
XML
parser用来装载XML文档到缓存中,文档装载时,可以使用DOM进行检索和处理。DOM采用树形结构表示
XML文档,文档元素是树的最高阶层,该元素有一个或多个孩子节点用来表示树的分枝。
节点接口程序通常用来读和写XML节点树中的个别元素,文档元素的孩子节点属性可以用来构造个别元素节点。XML
parser用来证明Web中的DOM支持遍历节点树的所有函数,并可通过它们访问节点和及其属性、插入删除节点、转换节点树到XML中。
所有Microsoft
XML
parser函数得到W3C
XML
DOM的正式推荐,除了load和loadXML函数(正式的DOM不包括标准函数loading
XML文档)。有13个节点类型被Microsoft
XML
parser支持,下面列出常用节点:
节点类型
例子
Document
type
<!DOCTYPE
food
SYSTEM
"food.dtd">
Processing
instruction
<?xml
version="1.0"?>
Element
<drink
type="beer">Carlsberg</drink>
Attribute
type="beer"
Text
Carlsberg
3.使用XML
parser
为了更加熟练的处理XML文档,必须使用XML
parser。Microsoft
XML
parser是IIS5.0所带的一个COM组件,一旦安装了IIS5.0,parser可以利用HTML文档和ASP文件中的脚本。
Microsoft
XMLDOM
parser支持以下编程模式:
----支持
JavaScript,
VBScript,
Perl,
VB,
Java,
C++
等等
----支持
W3C
XML
1.0
和
XML
DOM
----支持
DTD
和
validation
如果使用IE5.0中的JavaScript,可以使用下面的XML文档对象:
var
xmlDoc
=
new
ActiveXObject("Microsoft.XMLDOM")
如果使用VBScript,可以使用下面的XML文档对象:
set
xmlDoc
=
CreateObject("Microsoft.XMLDOM")
如果使用ASP,可以使用下面的XML文档对象:
set
xmlDoc
=
Server.CreateObject("Microsoft.XMLDOM")
4.装载一个XML文件到parser中
下面的代码装载存在的XML文档进入XML
parser:
<script
language="JavaScript">
var
xmlDoc
=
new
ActiveXObject("Microsoft.XMLDOM")
xmlDoc.async="false"
xmlDoc.load("note.xml")
//
.......
processing
the
document
goes
here
</script>
第一行脚本增加了一个Microsoft
XML
parser实例,第三行装载名为”note.xml”的XML文档进入parser中。第二行保证文档装载完成以后parser进行下一步工作。
5.
parseError对象
打开XMl文档时,XML
Parser产生错误代码,并存在parseError对象中,包括错误代码、错误文本和错误行号,等信息。
6.文件错误
下面的例子将试图装载一个不存在的文件,然后产生相应的错误代码:
var
xmlDoc
=
new
ActiveXObject("Microsoft.XMLDOM")
xmlDoc.async="false"
xmlDoc.load("ksdjf.xml")
document.write("<br>Error
Code:
")
document.write(xmlDoc.parseError.errorCode)
document.write("<br>Error
Reason:
")
document.write(xmlDoc.parseError.reason)
document.write("<br>Error
Line:
")
document.write(xmlDoc.parseError.line)
7.XML错误
下面使用不正确的格式装载XMl文档,
var
xmlDoc
=
new
ActiveXObject("Microsoft.XMLDOM")
xmlDoc.async="false"
xmlDoc.load("note_error.xml")
document.write("<br>Error
Code:
")
document.write(xmlDoc.parseError.errorCode)
document.write("<br>Error
Reason:
")
document.write(xmlDoc.parseError.reason)
document.write("<br>Error
Line:
")
document.write(xmlDoc.parseError.line)
8.
parseError属性
属性
errorCode
返回长整型错误代码
reason
返回字符串型错误原因
line
返回长整型错误行号
linePos
返回长整型错误行号位置
srcText
返回字符串型产生错误原因
url
返回url装载文档指针
filePos
返回长整型错误文件位置
9.遍历节点树
一种通用的析取XML文档的方法是遍历节点树和它的元素值。下面是使用VBScript写的遍历节点树的程序代码:
set
xmlDoc=CreateObject("Microsoft.XMLDOM")
xmlDoc.async="false"
xmlDoc.load("note.xml")
for
each
x
in
xmlDoc.documentElement.childNodes
document.write(x.nodename)
document.write(":
")
document.write(x.text)
next
10.为XML文件提供HTML格式
XML的一个优点是把HTML文档和它的数据分离开。通过使用浏览器中的XML
parser,HTML页面可以被构造成静态文档,通过JavaScript提供动态数据。下面的例子使用JavaScript读取XML文档,写XML数据成HTML元素:
var
xmlDoc
=
new
ActiveXObject("Microsoft.XMLDOM")
xmlDoc.async="false"
xmlDoc.load("note.xml")
nodes
=
xmlDoc.documentElement.childNodes
to.innerText
=
nodes.item(0).text
from
.innerText
=
nodes.item(1).text
header.innerText
=
nodes.item(2).text
body.innerText
=
nodes.item(3).text
11.通过名称访问XML元素
下面的例子使用JavaScript读取XML文档,写XML数据成HTML元素:
var
xmlDoc
=
new
ActiveXObject("Microsoft.XMLDOM")
xmlDoc.async="false"
xmlDoc.load("note.xml")
document.write(xmlDoc.getElementsByTagName("from").item(0).text)
12.装载纯XML文本进入parser
下面的代码装载文本字符串进入XML
parser
:
<script
language="JavaScript">
var
text="<note>"
text=text+"<to>Tove</to><from>Jani</from>"
text=text+"<heading>Reminder</heading>"
text=text+"<body>Don't
forget
me
this
weekend!</body>"
text=text+"</note>"
var
xmlDoc
=
new
ActiveXObject("Microsoft.XMLDOM")
xmlDoc.async="false"
xmlDoc.loadXML(text)
//
.......
processing
the
document
goes
here
</script>
13.装载XML进入Parser
<html>
<body>
<script
language="javascript">
var
xmlDoc
=
new
ActiveXObject("Microsoft.XMLDOM")
xmlDoc.async="false"
xmlDoc.load("note.xml")
document.write("The
first
XML
element
in
the
file
contains:
")
document.write(xmlDoc.documentElement.childNodes.item(0).text)
</script>
</body>
</html>
遍历XML节点树:
<html>
<body>
<script
language="VBScript">
txt="<h1>Traversing
the
node
tree</h1>"
document.write(txt)
set
xmlDoc=CreateObject("Microsoft.XMLDOM")
xmlDoc.async="false"
xmlDoc.load("note.xml")
for
each
x
in
xmlDoc.documentElement.childNodes
document.write("<b>"
&
x.nodename
&
"</b>")
document.write(":
")
document.write(x.text)
document.write("<br>")
next
</script>
</body>
</html>
装载XML
进入
HTML
<html>
<head>
<script
language="JavaScript"
for="window"
event="onload">
var
xmlDoc
=
new
ActiveXObject("Microsoft.XMLDOM")
xmlDoc.async="false"
xmlDoc.load("note.xml")
nodes
=
xmlDoc.documentElement.childNodes
to.innerText
=
nodes.item(0).text
from.innerText
=
nodes.item(1).text
header.innerText
=
nodes.item(2).text
body.innerText
=
nodes.item(3).text
</script>
<title>HTML
using
XML
data</title>
</head>
<body
bgcolor="yellow">
<h1>Refsnes
Data
Internal
Note</h1>
<b>To:
</b><span
id="to"></span>
<br>
<b>From:
</b><span
id="from"></span>
<hr>
<b><span
id="header"></span></b>
<hr>
<span
id="body"></span>
</body>
</html>
北大青鸟java培训:什么是DOM
DOM(DocumentObjectModel)即文档对象模型,针对HTML和XML文档的API(应用程序接口)。
DOM描绘了一个层次化的节点树,运行开发人员添加、移除和修改页面的某一部分。
DOM脱胎于Netscape及微软公司创始的DHTML(动态HTML),但现在它已经成为表现和操作页面标记的真正跨平台、语言中立的方式。
1.节点加载HTML页面时,Web浏览器生成一个树型结构,用来表示页面内部结构。
DOM将这种树型结构理解为由节点组成。
我们理解几个概念,html标签没有父辈,没有兄弟,所以html标签为根标签。
head标签是html子标签,meta和title标签之间是兄弟关系。
宁夏电脑培训http://www.kmbdqn.cn/认为如果把每个标签当作一个节点的话,那么这些节点组合成了一棵节点树。
2.节点种类:元素节点、文本节点、属性节点。
java dom是什么和北大青鸟java培训:什么是DOM的问题分享结束啦,以上的文章解决了您的问题吗?欢迎您下次再来哦!