通过毕向东老师的讲解我明白了对xml的解析情况!
1. 对文档的解析方式:
1DOM
DOM解析器使用树形模型,把XML文档转化为一个包含其内容的树,并可以对树进行遍历。
2SAX
SAX解析器采用了基于事件的模型,解析XML文档的时候可以触发一系列的事件。
3JDOM
JDOM的目的是成为Java特定文档模型,它简化与XML的交互并且比使用DOM实现更快。
4DOM4J
DOM4J是一个非常非常优秀的Java XML API,具有性能优异、功能强大和极端易用使用的特点。
2。DOM(Document Object Model)
文档对象模型
DOM的三层模型将HTML、XML文档定义成树形结构。
文档中的标签,属性,文本等都封装成了节点对象。
封装成对象的好处就是更易于操作这些节点。
DOM本身就是对外暴露的一套API。
3.现在最流行的是dom4j
具体如下:
1.DOM在java平台上的应用
2。dom4j是一套开源的类库。
3.集成的 XPath(路径查询语言)支持、 XML Schema(约束模式文档)支持。
4具体操作:
获取到dom4j的jar包以及帮助文档。
将jar包设置到classpath中,就可以使用dom4j中提供的对象,进行xml文档的解析了。
查看帮助文档了解对象的使用。
1.创建读取对象。 SAXReader reader = new SAXReader();
2.通过读取对象的read方法获取xml文档所对应的Document对象。
File xmlFile = new File("studentInfo.xml"); Document document = reader.read(xmlFile);
3通过文档对象的getRootElement()方法获取xml文档中的根节点。
Element rootElement = document.getRootElement();
4.删除文档中的第一个学生节点的字符集
static void remove() throws DocumentException{
SAXReader reader=new SAXReader();
Document document=reader.read(new File("students.xml"));
Element rooElement=document.getRootElement();
Element stuElement=rooElement.element("student");
stuElement.remove(stuElement.attribute("num"));
stuElement.remove(stuElement.element("mail"));
System.out.println(document.asXML());
5.将规范的文本转成xmlDocument对象,通过parsetext方法并进行remove
static void strToXML() throws DocumentException{
String x="<book id='100'><name>thinkr in java</name></book>";
Document document=DocumentHelper.parseText(x);
Element rooElement=document.getRootElement();
rooElement.remove(rooElement.element("name"));
rooElement.remove(rooElement.attribute("id"));
System.out.println(document.asXML());
6XPath介绍
1.XPath 是在 XML 文档中查找信息的语言
2。XPath 是通过元素和属性进行查找
3。简化了Dom4j查找节点的过程
使用XPath必须导入jaxen-1.1-beta-6.jar
否则出现
如果想知道dom对xml的解析详细过程的,请请我留言
分享到:
相关推荐
2017年-传智播客-张志君老师-SpringBoot视频教程 网上找了好久才找到的
传智播客-Dom4J-毕向东.讲解,欢迎大家下载!
本资源"传智博客-C语言 PPT"详细讲解了C语言的基础知识,帮助初学者逐步掌握这门强大的编程工具。 首先,让我们从“创建第一个C语言程序”开始。在C语言中,程序的基本结构通常包括头文件包含、函数定义和主函数。...
【传智博客-安卓基础1】是一份专为初学者设计的安卓开发学习资源,包含了丰富的教学材料,帮助用户从零开始掌握安卓应用开发的基本技能。这个资源包中包括了源代码、课件以及学习笔记,是系统学习安卓开发的理想起点...
"传智博客-学习iOS前言 PPT" 提供了一个全面的指南,帮助初学者构建扎实的基础。这份资料旨在讲解学习iOS开发之前需要掌握的基本概念和技术,从而为后续深入的学习铺平道路。 首先,iOS开发的核心语言是Swift,它是...
传智博客是由知名教育机构传智播客推出的在线学习平台,提供了丰富的IT技术教程,其中包括由张孝祥老师主讲的Java培训课程。这个课程不仅涵盖了Java的基础知识,还深入探讨了高级特性和实战技巧,旨在帮助学员快速...
传智播客毕向东的Dom4J视频教程的ppt讲稿
javascript加强--传智播客--蔡世友
传智播客-IOS8就业班广州1期完整视频目录清单
传智播客-Jdbc-李勇.ppt传智播客-Jdbc-李勇.ppt
传智播客--佟刚--JavaWEB开发-Servlet 配套课程所用的PPT
传智播客--ssh全套
javascript面向对象编程--传智播客--蔡世友
"传智博客-黑马-2017-Python就业班-完整版视频-附带课件和资料" 这个标题揭示了这是一套完整的Python编程学习资源,由传智播客(一家知名的IT教育机构)与黑马程序员(传智播客旗下的专业培训品牌)联合推出。...
Ajax--传智播客--蔡世友培训ppt
javascript基础--传智播客--蔡世友
ExtJS快速入门--传智播客--蔡世友
传智教育作为国内领先的IT职业培训机构,其业务核心主要围绕IT职业教育培训展开。这份研究报告提供了深入分析传智教育的核心业务、行业背景、市场前景以及公司未来发展的预测。 首先,报告指出传智教育是A股市场上...