欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

XML PULL和PUSH技术的区别

程序员文章站 2022-03-10 18:41:20
...
PULL跟SAX虽然都是基于事件的,但是两者最重要的区别应该是:

SAX可以认为是“PUSH“的,跟PULL相对。因为Parser在遇到特定事件源的时候会将数据传递给回调函数来处理,从这个意义上讲数据是”推送“给用户的,而PULL方式是遇到特定事件时由用户去从Parser中获取自己感兴趣的,感觉数据像是”拉“下来的。

还有一个区别是:在PULL式解析过程中(while循环里),可以退出循环;但是在SAX过程中,一旦开始解析就要解析完成。

另外,稍微扩展下:
目前主要存在两种解析和生成原理,一种是通过反射来匹配类名、属性名等信息,一种是直接使用jvm的字节码来进行操作,这两种方式的效率高下不言而喻,自然是二进制字节码效率更高。

以上就是XML PULL和PUSH技术的区别的详细内容,更多请关注其它相关文章!

相关标签: XML ,PULL,PUSH