DOM解析 和 SAX解析 的区别
No. | 区别 | DOM解析 | SAX解析 |
1 | 操作 | 将所有的文件读取到内存之中形成DOM树,如果文件量较大,则无法使用 | 顺序读入文件所需要的文件内容,不会一次性全部读取,不受文件大小的限制 |
2 | 访问权限 | DOM树在内存中形成,可以随意存放或读取文件树的任何部分,没有次数限制 | 由于采用部分读取,只能对文件按顺序从头到尾解析一遍,不支持对文件的随意存取 |
3 | 修改 | 可以任意修改文件树 | 只能读取XML文件内容,但不能修改 |
4 | 复杂度 | 易于理解,易于开发 | 开发上比较复杂,需要用户自定义事件处理器 |
5 | 对象模型 | 系统为使用者自动建立DOM树,XML对象模型由系统提供 | 对开发人员更加灵活,可以用SAX建立自己的XML对象模型 |
两者各有优点,将两者融合就成为了JDOM。