一 简介
XML的解析方式分为四种:1、DOM解析;2、SAX解析;3、JDOM解析;4、DOM4J解析
本文介绍使用org.w3c.dom解析XML
简单来说:就是将XML看做是一颗树,DOM就是对这颗树的一个数据结构的描述。
优点:
1、形成了树结构,有助于更好的理解、掌握,且代码容易编写。
2、解析过程中,树结构保存在内存中,方便修改。
缺点:
1、由于文件是一次性读取,所以对内存的耗费比较大。
2、如果XML文件比较大,容易影响解析性能且可能会造成内存溢出。
首先介绍下Java DOM 的 API:
1.解析器工厂类:DocumentBuilderFactory
创建的方法:DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
2.解析器:DocumentBuilder
创建方法:通过解析器工厂类来获得 DocumentBuilder db = dbf.newDocumentBuilder();
3.文档树模型Document
创建方法:a.通过xml文档
Document doc = db.parse("bean.xml");
b.将需要解析的xml文档转化为输入流
InputStream is = new FileInputStream("bean.xml");
Document doc = db.parse(is);
然后介绍下常用对象:
1.Document对象
代表了一个XML文档的模型树,所有的其他Node都以一定的顺序包含在Document对象之内,排列成一个树状结构,以后对XML文档的所有操作都与解析器无关,直接在这个Document对象上进行操作即可;
包含了很多getXXX(),setXX(),createXX()。
2.Node对象
是DOM中最基本的对象,代表了文档树中的抽象节点。但在实际使用中很少会直接使用Node对象,而是使用Node对象的子对象Element,Attr,Text等
3.元素类Element
是Node类最主要的子对象,在元素中可以包含属性,因而E