使用Xerces-J的DOM方式进行XML程序设计

--NamedNodeMap与NodeList


  1. 简介与背景知识
  2. Xerces对DOM的实现
  3. 如何使用
  4. 动态创建一个DOM树
  5. 使用XMLSerializer序列化DOM对象
  6. 使用DOM的程序的实例

NamedNodeMap

 

NamedNodeMap用来描述一些没有顺序同时还可以用名字来引用的对象,典型的应用就是描述下面的XML代码表现的一系列的属性。

<testNamedNodeMap attr1=”test1” attr2=”test2” attr3=”test3”/>

这里面attr1,attr2,attr3等就可以用NamedNodeMap来描述。这个接口包含的方法如表1。

NamedNodeMap中的方法
方法 使用说明

int getLength()

返回在Map里面的节点的个数。

Node getNamedItem(java.lang.String name)

通过节点的名字从Map里面获取节点。

Node getNamedItemNS(java.lang.String namespaceURI, java.lang.String localName)

通过节点的名空间和节点的名字从Map里面获取节点。

Node item(int index)

这个方法Map中的第index个节点,这个方法应该同getLength()方法协同使用。index从0开始计,如果index的值大于或等于用getLength得到的值,这个方法返回null。

Node removeNamedItem(java.lang.String name)

通过引用节点的名字,从Map中删除一个节点。返回值为被删除的节点。
Node removeNamedItemNS( java.lang.String namespaceURI, java.lang.String localName) 通过引用节点的名空间和节点的名字,从Map中删除一个节点。返回值为被删除的节点。
Node setNamedItem(Node arg) 向Map中增加一个节点。返回值为增加的节点。使用这个节点的nodeName属性。
Node setNamedItemNS(Node arg) 向Map中增加一个节点。返回值为增加的节点。使用这个节点的namespaceURI属性和localName属性。

 

NodeList

NodeList用来描述一系列有前后顺序的节点,典型的应用就是描述一个节点的子节点。NodeList界面只有两个方法,一个是int getLength(),另一个是Node item(int index )。这两个方法的使用同NamedNodeMap中的同名方法相同,这里就不再进行介绍了。