当前位置:首页 >> 计算机软件及应用 >>

黑马程序员:Java面试题之XML技术


这个知识点被问到的几率非常之高,但是同时也难倒了很多哥们,不是真的难,而 是平时不注意细节~干货送上~ 1、xml 有哪些解析技术?区别是什么?

答:有 DOM,SAX,STAX 等

DOM:处理大型文件时其性能下降的非常厉害。这个问题是由 DOM 的树结构所造成的,这种结构占用的内存较多,而且 DOM 必须 在解析文件之前把整个文档装入内存,适合对 XML 的随机访问 SAX:不 现于 DOM,SAX 是事件驱动型的 XML 解析方式。 它顺序读取 XML 文 件,不需要一次全部装载整个文件。当遇到像文件开头,文档结束,或 者标签开头与标签结束时,它会触发一个事件,用户通过在其回调事件 中写入处理代码来处理 XML 文件,适合对 XML 的顺序访问

STAX:Streaming API for XML (StAX)

讲解这些区别是不需要特别去比较, 就像说传智播客与其他培训机 构的区别时,我们只需说清楚传智播客有什么特点和优点就行了,这就 已经间接回答了彼此的区别。

2、你在项目中用到了 xml 技术的哪些方面?如何实现的?

答:用到了数据存贮,信息配置两方面。在做数据交换平台时,将 不能数据源的数据组装成 XML 文件,然后将 XML 文件压缩打包加密 后通过网络传送给接收者,接收解密与解压缩后再同 XML 文件中还原 相关信息进行处理。在做软件配置时,利用 XML 可以很方便的进行, 软件的各种配置参数都存贮在 XML 文件中。

3、XML 文档定义有几种形式?它们之间有何本质区别?解析 XML 文档 有哪几种方式?

a: 两种形式 dtd schema,

b: 本质区别:schema 本身是 xml 的, 可以被 XML 解析器解析(这 也是从 DTD 上发展 schema 的根本目的),c:有 DOM,SAX,STAX 等

DOM:处理大型文件时其性能下降的非常厉害。这个问题是由 DOM 的树结构所造成的,这种结构占用的内存较多,而且 DOM 必须 在解析文件之前把整个文档装入内存,适合对 XML 的随机访问 SAX:不 现于 DOM,SAX 是事件驱动型的 XML 解析方式。 它顺序读取 XML 文 件,不需要一次全部装载整个文件。当遇到像文件开头,文档结束,或 者标签开头与标签结束时,它会触发一个事件,用户通过在其回调事件 中写入处理代码来处理 XML 文件,适合对 XML 的顺序访问 STAX:Streaming API for XML (StAX)


赞助商链接
相关文章:
黑马程序员javaweb教程:转义字符和CDATA区
黑马程序员javaweb教程:转义字符和CDATA区 - 转义字符和 CDATA 区 因为在 xml 文档中有些字符是特殊的, 不能使用它们作为文本数据。 例如: 不能使用 “<”或...
黑马程序员安卓教程:使用 XmlSerializer 生成 Xml 文件
黑马程序员安卓教程:使用 XmlSerializer 生成 Xml 文件_计算机软件及应用_IT/...6. 7. MainActivity.java 代码片段 * 第二种方式生成 xml * 使用 ...
黑马程序员javaweb教程:解析器概述
黑马程序员javaweb教程:解析器概述 - 解析器概述 1 什么是 XML 解析器 DOM、SAX 都是一组解析 XML 文档的规范,其实就是接口,这说明需要有实现者能使 用,而...
黑马程序员mybatis教程第一天:SqlMapConfig.xml(1)
黑马程序员mybatis教程第一天:SqlMapConfig.xml(1)_计算机软件及应用_IT/计算机_专业资料。SqlMapConfig.xml mybatis 的全局配置文件 SqlMapConfig.xml,配置内容如下...
黑马程序员javaweb教程:Schema
黑马程序员javaweb教程:Schema - Schema Schema 概述 我们学习 Schema 的第一目标是:参照 Schema 的要求可以编写 XML 文档; 第二目标是:可以自己来...
黑马程序员安卓教程:案例新闻客户端
黑马程序员安卓教程:案例新闻客户端 - 案例新闻客户端 该案例属于一个综合案例,不仅用到了网络访问、图片加载、xml 的解析、handler 机制、线程池的使 用还用到...
黑马程序员javaweb教程:Document操作
黑马程序员javaweb教程:Document操作 - Document 操作 (***) 1 遍历 students.xml 涉及的相关方法: ? Element getRootEle...
黑马程序员:AJAX入门系列
黑马程序员:AJAX入门系列 - 黑马程序员:AJAX 入门系列 什么是 AJAX? AJAX 是”Asynchronous JavaScript and XML”的缩写(异步的 JavaSc...
更多相关标签: