javadom是什么 北大青鸟java培训:什么是DOM
老铁们,大家好,相信还有很多朋友对于javadom是什么和北大青鸟java培训:什么是DOM的相关问题不太懂,没关系,今天就由我来为大家分享分享javadom是什么以及北大青鸟java培训:什么是DOM的问题,文章篇幅可能偏长,希望可以帮助到大家,下面一起来看看吧!
java的xml引擎中,dom4j和jdom有什么区别
dom是解析xml的底层接口之一(另一种是sax);
而jdom和dom4j则是基于底层api的更高级封装;
dom是通用的,而jdom和dom4j则是面向java语言的。
JDOM的目的是成为 Java特定文档模型,它简化与 XML的交互并且比使用 DOM实现更快。由于是第一个 Java特定模型,JDOM一直得到大力推广和促进。正在考虑通过“Java规范请求 JSR-102”将它最终用作“Java标准扩展”。从 2000年初就已经开始了 JDOM开发。
JDOM与 DOM主要有两方面不同。首先,JDOM仅使用具体类而不使用接口。这在某些方面简化了 API,但是也限制了灵活性。第二,API大量使用了 Collections类,简化了那些已经熟悉这些类的 Java开发者的使用。
JDOM文档声明其目的是“使用 20%(或更少)的精力解决 80%(或更多)Java/XML问题”(根据学习曲线假定为 20%)。JDOM对于大多数 Java/XML应用程序来说当然是有用的,并且大多数开发者发现 API比 DOM容易理解得多。JDOM还包括对程序行为的相当广泛检查以防止用户做任何在 XML中无意义的事。然而,它仍需要您充分理解 XML以便做一些超出基本的工作(或者甚至理解某些情况下的错误)。这也许是比学习 DOM或 JDOM接口都更有意义的工作。
JDOM自身不包含解析器。它通常使用 SAX2解析器来解析和验证输入 XML文档(尽管它还可以将以前构造的 DOM表示作为输入)。它包含一些转换器以将 JDOM表示输出成 SAX2事件流、DOM模型或 XML文本文档。JDOM是在 Apache许可证变体下发布的开放源码。
DOM4J
虽然 DOM4J代表了完全独立的开发结果,但最初,它是 JDOM的一种智能分支。它合并了许多超出基本 XML文档表示的功能,包括集成的 XPath支持、XML Schema支持以及用于大文档或流化文档的基于事件的处理。它还提供了构建文档表示的选项,它通过 DOM4J API和标准 DOM接口具有并行访问功能。从 2000下半年开始,它就一直处于开发之中。
为支持所有这些功能,DOM4J使用接口和抽象基本类方法。DOM4J大量使用了 API中的 Collections类,但是在许多情况下,它还提供一些替代方法以允许更好的性能或更直接的编码方法。直接好处是,虽然 DOM4J付出了更复杂的 API的代价,但是它提供了比 JDOM大得多的灵活性。
在添加灵活性、XPath集成和对大文档处理的目标时,DOM4J的目标与 JDOM是一样的:针对 Java开发者的易用性和直观操作。它还致力于成为比 JDOM更完整的解决方案,实现在本质上处理所有 Java/XML问题的目标。在完成该目标时,它比 JDOM更少强调防止不正确的应用程序行为。
DOM4J是一个非常非常优秀的Java XML API,具有性能优异、功能强大和极端易用使用的特点,同时它也是一个开放源代码的软件。如今你可以看到越来越多的 Java软件都在使用 DOM4J来读写 XML,特别值得一提的是连 Sun的 JAXM也在用 DOM4J。
北大青鸟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.节点种类:元素节点、文本节点、属性节点。
网页技术中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>
OK,关于javadom是什么和北大青鸟java培训:什么是DOM的内容到此结束了,希望对大家有所帮助。