新网创想网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
xml文件除了给开发者看,更多的情况使用程序读取xml文件的内容,这叫做xml解析。
让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:国际域名空间、网页空间、营销软件、网站建设、金林网站维护、网站推广。XML解析分为两种方式:DOM和SAX。
DOM:W3C组织推荐的一种解析方式。
SAX:(SimpleAPI forXML) 不是官方标准,它产生自XML社区,几乎所有的XML解析器都支持它。
JDK6.0提供新的解析方式StAX(StreamAPI forXML)
DOM解析原理:
1)JAXP (oracle-Sun公司官方)
2)JDOM工具(非官方)
3)Dom4J工具(非官方) 三大框架(默认读取xml的工具就是Dom4j)
SAX解析原理
1)Sax解析工具(oracle-sun公司官方)
DOM解析
会把整个XML载入内存,以DOM树的形式存储,支持回写
如果XML文档特别大,就会消耗计算机大量内存,容易导致内存溢出
SAX/StAx解析
相比DOM是一种更为轻量级的方案
采用串行方式读取,基于事件驱动解析
编程相对复杂
不支持回写,无法在读取过程中修改XML数据
序号 | 视角 | DOM解析 | SAX解析 |
---|---|---|---|
1 | 原理 | 一次性加载xml文档,不适合大容量的文件读取 | 加载一点,读取一点,处理一点。适合大容量文件的读取 |
2 | 支持操作 | DOM解析可以任意进行增删改读 | SAX解析只能读取 |
3 | 是否支持回读 | DOM解析任意读取任何位置的数据,甚至往回读 | SAX解析只能从上往下,按顺序读取,不能往回读 |
4 | 编程方法 | DOM解析面向对象的编程方法(Node,Element,Attribute),Java开发者编码比较简单。 | SAX解析基于事件的编程方法。java开发编码相对复杂。 |
xml解析器一次性把整个xml文档加载进内存,然后在内存中构建一颗Document的对象树, 通过Document对象,得到树上的节点对象,通过节点对象访问(操作)到xml文档的内容。 缺点: 不适合读取大容量的xml文件,容易导致内存溢出。
Document树只有一个根节点,树上的分支叫节点(Node)。文档中所有的元素、属性、文本都会被解析成Node节点(标签节点Element、属性节点Attribute、文本节点Text、注释节点)。
创新互联www.cdcxhl.cn,专业提供香港、美国云服务器,动态BGP最优骨干路由自动选择,持续稳定高效的网络助力业务部署。公司持有工信部办法的idc、isp许可证, 机房独有T级流量清洗系统配攻击溯源,准确进行流量调度,确保服务器高可用性。佳节活动现已开启,新人活动云服务器买多久送多久。