自学内容网 自学内容网

第十章,XML

高级编程

第十章,XML
一,XML简介
  • XML(EXtensible Markup Language),可扩展标记语言

  • 特点

    • XML与操作系统。编程语言的开发平台无关
    • 实现不同系统数据之间的交换
  • 作用

    • 数据交互
    • 配置应用程序和网站
    • Ajax基石
  • XML文档结构

    <?xml version="1.0" encoding="UTF-8"?>
    <books>
        <!--图书信息 -->
        <book id="bk101">
            <author>王珊</author>
            <title>.NET高级编程</title>
            <description>包含C#框架和网络编程等</description>
        </book>
        <book id="bk102">
            <author>李明明</author>
            <title>XML基础编程</title>
            <description>包含XML基础概念和基本作用</description>
        </book>
    </books>
    
  • XML标签

    • XML文档内容由一系列表标签元素组成

      <元素名 属性名=“属性值”>元素内容</元素名>
      
    • 属性值用双引号包裹

    • 一个元素可以有多个属性

    • 属性值中不能直接包含<、“、&

    • 不建议使用的字符:‘、>

二,XML编写注意事项
  • 所有XML元素都必须有结束标签
  • XML标签对大小写敏感
  • XML必须正确的嵌套
  • 同级标签以缩进对齐
  • 元素名称可以包含字母、数字或其他的字符
  • 元素名称不能以数字或者标点符号开始
  • 元素名称中不能含空格
三,转移符

在这里插入图片描述

四,XML解析器
  • 解析器类型
    • 非验证解析器
      • 检查文档格式是否良好
    • 验证解析器
      • 使用DTD检查文档格式的有效性
五,XML命名空间
  • XML命名空间的作用

    • 解决在复杂,大型xml文件中,出现名称相同,但是含义不同的元素

      <?xml version="1.0" encoding="UTF-8"?>
      <cameras xmlns:canon="http://www.canon"
          xmlns:nikon="http://www.nikon.com">
          <canon:camera prodID="P663" name="Camera傻瓜相机"/>
          <nikon:camera prodID=“K29B3” name=“Camera超级35毫米相机"/>
      </cameras>
      
六,解析XML技术
  • DOM
    • 基于XML文档树结构的解析
    • 适用于多次访问的XML文档
    • 特点:比较消耗资源
  • SAX
    • 基于事件的解析
    • 适用于大数据量的XML文档
    • 特点:占用资源少,内存消耗小
  • DOM4J
    • 非常优秀的Java XML API
    • 性能优异、功能强大
    • 开放源代码
七,DOM解析XML
  • DOM介绍

    • 文档对象模型(Document Object Model)
    • DOM把XML文档映射成一个倒挂的树
  • 常用接口介绍

    在这里插入图片描述

  • 访问DOM树节点

    • DOM解析XML文件步骤
      • 创建解析器工厂对象
      • 解析器工厂对象创建解析器对象
      • 解析器对象指定XML文件创建Document对象
      • 以Document对象为起点操作DOM树
八,保存XML文件
  • 获得TransformerFactory对象
  • 创建Transformer对象
  • 创建DOMSource对象
    • 包含XML信息
  • 设置输出属性
    • 编码格式
  • 创建StreamResult对象
    • 包含保存文件的信息
  • 将XML保存到指定文件中

原文地址:https://blog.csdn.net/m0_68766848/article/details/142419820

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!