XML中Node和Element的区别

如题所述

第1个回答  2022-10-21

XML中Node和Element的区别

1.元素(Element)和结点(Node)的区别,元素是一个小范围的定义,必须是含有完整资讯的结点才是一个元素,例如<div>...</div>。但是一个结点不一定是一个元素,而一个元素一定是一个结点。
什么是node:
NODE是相对TREE这种资料结构而言的。TREE就是由NODE组成。这个部分你可以参考离散数学的树图。

什么是element

ELEMENT则是XML里的概念,<xxx>就是元素,是XML中的资料的组成部分之一。

素(Element)和结点(Node)的区别,元素是一个小范围的定义,必须是含有完整资讯的结点才是一个元素,例如<div>...</div>。但是一个结点不一定是一个元素,而一个元素一定是一个结点。

<a>

<b> </b>

<b> </b>

<a>

DOM将文件中的所有都看作节点 node>element

1DOM在解析文件的时候按整个文件的结构生成一棵树,全部储存在记忆体

优点就是整个文件都一直在记忆体中,我们可以随时访问任何节点,并且对树的遍历也是比较熟悉的操作;缺点则是耗记忆体,并且必须等到所有的文件都读入记忆体才能进行处理。
2一个需要注意的地方就是,XML文件两个标签之间的空白也是这棵树的一个节点(Text节点)。 <a> <b></b> <a> a有三个节点

Element root = doc.getDocumentElement();:root是什么????

NodeList list = root.getChildNodes(); root 到底是节点还是元素我不清楚?????
node有几个子型别:

Element,
Text,
Attribute,
RootElement,
Comment,
Namespace等
Element是可以有属性和子节点的node。

Element是从Node继承的

转换

if (node.getNodeType() == Element.ELEMENT_NODE)
{
Element e = (Element) node;

}
?元素有孩子吗

elemen et 性质

1 e.getAttributes()
2 e.getChildNodes()

3 e.getTagName()
Element root = doc.getDocumentElement();:root是什么????

NodeList list = root.getChildNodes(); root 到底是节点还是元素我不清楚???

······················································

public void domParse(String fileName) throws Exception {
DocumentBuilderFactory f = DocumentBuilderFactory.newInstance();
DocumentBuilder db = f.newDocumentBuilder();builder
Document docment = db.parse(new File(fileName));parese

Element el = docment.getDocumentElement();root
domRead(el);

}

public void domRead(Element currentNode) {
if ("struts-config".equals(currentNode.getNodeName())) {
config = new StrutsConfig();
}

NodeList list = currentNode.getChildNodes();
for (int i = 0; i < list.getLength(); i++) {
Node node = list.item(i);
if (node.getNodeType() == Element.ELEMENT_NODE) {
Element e = (Element) node;????

if ("form-beans".equals(e.getTagName())) {
formBeans = new ArrayList<FormBeanConfig>();
domRead(e);
}
if ("form-bean".equals(e.getTagName())) {
FormBeanConfig fc = new FormBeanConfig();
NamedNodeMap attrs = e.getAttributes();

for (int j = 0; j < attrs.getLength(); j++) {
Attr attr = (Attr) attrs.item(j);
if ("name".equals(attr.getName())) {
fc.setName(attr.getValue());
} else {
fc.setType(attr.getValue());
}
}
formBeans.add(fc);
}
if ("action-mapping".equals(e.getTagName())) {
actions = new ArrayList<ActionConfig>();
domRead(e);
}
if ("action".equals(e.getTagName())) {
ActionConfig ac = new ActionConfig();
NamedNodeMap attrs = e.getAttributes();
for (int k = 0; k < attrs.getLength(); k++) {
Attr attr = (Attr) attrs.item(k);
if ("path".equals(attr.getName())) {
ac.setPath(attr.getValue());
} else if ("type".equals(attr.getName())) {
ac.setType(attr.getValue());
} else {
ac.setName(attr.getValue());
}
}

actions.add(ac);
}
}
}
}

xml中 node和element的区别

Node 物件是整个 DOM 的主要资料型别。节点物件代表文件树中的一个单独的节点。节点可以是元素节点、属性节点、文字节点。
Element 物件表示 XML 文件中的元素。元素可包含属性、其他元素或文字。
XML树结构中只有NODE,Element的属性,文字等都是节点。

XML中Element,Node,Attr的区别和联络

1.元素(Element)和结点(Node)的区别,元素是一个小范围的定义,必须是含有完整资讯的结点才是一个元素,例如<div>...</div>。但是一个结点不一定是一个元素,而一个元素一定是一个结点。
什么是node:
NODE是相对TREE这种资料结构而言的。TREE就是由NODE组成。这个部分你可以参考离散数学的树图。

什么是element

ELEMENT则是XML里的概念,<xxx>就是元素,是XML中的资料的组成部分之一。

素(Element)和结点(Node)的区别,元素是一个小范围的定义,必须是含有完整资讯的结点才是一个元素,例如<div>...</div>。但是一个结点不一定是一个元素,而一个元素一定是一个结点。

<a>

<b> </b>

<b> </b>

<a>

DOM将文件中的所有都看作节点 node>element

1DOM在解析文件的时候按整个文件的结构生成一棵树,全部储存在记忆体

优点就是整个文件都一直在记忆体中,我们可以随时访问任何节点,并且对树的遍历也是比较熟悉的操作;缺点则是耗记忆体,并且必须等到所有的文件都读入记忆体才能进行处理。
2一个需要注意的地方就是,XML文件两个标签之间的空白也是这棵树的一个节点(Text节点)。 <a> <b></b> <a> a有三个节点

Element root = doc.getDocumentElement();:root是什么????

NodeList list = root.getChildNodes(); root 到底是节点还是元素我不清楚?????
node有几个子型别:

Element,
Text,
Attribute,
RootElement,
Comment,
Namespace等
Element是可以有属性和子节点的node。

Element是从Node继承的

转换

if (node.getNodeType() == Element.ELEMENT_NODE)
{
Element e = (Element) node;

}
?元素有孩子吗

elemen et 性质

1 e.getAttributes()
2 e.getChildNodes()

3 e.getTagName()

请问xml中,Document node 和document element的区别

第一个表示节点,第二个表示节点中的元素.

<book type=c>书</book>表示节点,book就是element

Node和Element的区别

Node 物件是整个 DOM 的主要资料型别。节点物件代表文件树中的一个单独的节点。节点可以是元素节点、属性节点、文字节点。 Element 物件表示 XML 文件中的元素。元素可包含属性、其他元素或文字。

dom4j简单学习 element和node的区别

由此可以这样理解Node和Element,Node是节点,一个属性、一段文字、一个注释等都是节点,而Element是元素,是比较完整的一个xml的元素,即我们口头上说的xml“结点”(此处故意使用“结”字,以示与“节点”Node区别),呵呵……
dom4j帮助文件在dom4j-1.6.1/docs/guide.档案里面,全部是英文,但是基本上应该能看懂。
1、 四种操作xml的方式:SAX,DOM,JDOM,DOM4J.
2、 DOM(Document Object Model):意思是把整个xml做为一个整体物件,直接全部放到记忆体里面,不管xml档案有多大;
3、 SAX=Sample API for XML:假如xml档案有2G,用第一种方式,是很困难的,SAX用的是一种类似流媒体方式进行的。
DOM和SAX是java的API,处理xml档案的时候,相对来说是比较困难的,于是出现了下面两种框架,包装了上面两个框架。
4、 JDOM:
5、 DOM4J:
6、 利用DOM4J解析xml档案(读取所有的属性节点)。
Document可以理解为整个文件物件
取root节点。Document.getRootElement()返回的是一个Element(元素)
7、 理解运用xpath,path就是路径,xpath在xml档案里面找到特定的节点。
Document.selectNodes(“hibernate-mapping/class/property”) 其中hibenate-mapping是根节点。做变.dom4j.Node物件返回的。
Document.selectSingleNodes(“hibernate-mapping/class/property”)只拿第一个。
基中@name是property的属性名valueOf是拿出name的值;
需要加入DOM4J里面的jaxen包
8、 DOM4J的生成xml档案
9、 用FileWriter生成xml档案的时候,可能没有格式,可以用XMLWriter类,这样自动进行美化。
10、 DOM4J修改xml档案;很少用。
11、 自动生成程式码往往用的是:freemarker或velocity,这是常用的。用dom4j生成也很少用。
12、 怎么用表里面的结构生成xml档案。
13、 JavaDB
a) Properties物件:可以理解为一个表格对应key,value
14、 Databasemetadata,可以能过这个JDK类,读取资料库的表结构,通过这个表结构做一些自己的事情。(熟悉用法)通过JDK文件和google学习
15、 元资料就是资料的资料,用来描述资料的资料。
16、 DWR,对Ajax框架封住得比较好,是类和java的结合。

文件由节点node构成。元素节点 element node,如 ,是节点node的一种型别。还有文字节点,属性节点。如 望采纳。p是元素节点,title="tips" 是属性节点,中文的文字是文字节点。

相似回答
大家正在搜