SAX(Simple API for XML)解析速度快,占用内存少。
适用为 SAX 的场景:映射为对象很方便。
流程
SAX 通过一个 Handler 将 XML “映射”到一个对象。
XML -> Handler -> Object
XML 示例
XML 对应的类示例
Handler 示例
Handler 相当于解析器,当解析到一个节点开始时,就触发 startDocument,结束时就触发 endElement,在中间就触发 characters。所以说,在节点开始时,我们利用 builder.setLength(0) 将内容清空,然后在 endElement 判断是哪个节点结束了,以决定取值放在哪里。
以上 Handler 比较简单,如果 XML 结构很复杂,可能 Handler 就要写很多了。
使用示例