zoukankan      html  css  js  c++  java
  • XML部分

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

      两种形式:DTD以及schema;

      本质区别:schema本身是xml的,可以被XML解析器解析(这也是从DTD上发展schema的根本目的);

      解析方式:有DOM、SAX、STAX、JDOM、DOM4J等;

        DOM:是一种与平台无关的官方解析方式,处理大型文件时其性能下降的非常厉害。这个问题是由DOM的树结构所造成的,这种结构占用的内存较多,而且DOM必须在解析文件之前把整个文档装入内存,适合对XML的随机访问;

          优点:形成了树结构,直观好理解代码更易编写;解析过程中树结构保留在内存中,方便修改。

          缺点:当XML文件较大时,对内存消耗比较大,容易影响解析性能并造成内存溢出。

        SAX:基于事件驱动的解析方式。不同于DOM,SAX是时间驱动型的XML解析方式。它顺序读取XML文件,不需要一次全部装载整个文件。当遇到像文件开头、文档结束或者标签开头与标签结束时,它会触发一个事件,用户通过在其回调事件中写入处理代码来处理XML文件,适合对XML的顺序访问;

          优点:采用事件驱动模式,对内存消耗比较小;适用于只需要处理XML中的数据。

          缺点:不易编写;很难同时访问同一个XML中数据。

        JDOM:仅使用具体类而不使用接口,API大量使用了Collections类。

        DOM4J:是JDOM的一种智能分支,它合并了许多超出基本XML文档表示的功能,使用接口和抽象基本类方法,是一个优秀的java xml API具有性能优异、灵活性好、功能强大和极端易用的特点,是一个开放源代码的软件。

        STAX:Streaming API for XML (StAX)。

    项目中用到了XML技术的哪些方面?如何实现?

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

  • 相关阅读:
    css常见小问题(个人的积累总结)
    YQBlogs1.2的解读与使用VS2012&LocalDB版本(跟进贴)
    asp.net mvc 用自定义的RazorViewEngine实现主题的自由切换遇到的问题!
    求解?命令行下操作LocalDb的诸多问题
    CentOS7下docker安装
    IIS 应用程序池设置,避免IIS假死
    .NET 将数据输出到WORD、EXCEL、TXT、HTM
    iframe高度动态自适应
    .net利用SQLBulkCopy进行数据库之间的大批量数据传递
    Datatable.Select()用法简介
  • 原文地址:https://www.cnblogs.com/DebugTheWorld/p/9801402.html
Copyright © 2011-2022 走看看