zoukankan      html  css  js  c++  java
  • XML

           XML  
    1、什么是 XML?
    概念:XML(EXtensible Markup Language)XML 指可扩展标记语言(EXtensible Markup Language)
    可扩展:我们可以自定义,完全按照自己的规则来!
    标记: 计算机所能认识的信息符号!
           int  num=5;  教材编号
    2、XML 和HTML的对比:
      01.很像html
      02.着重点是数据的保存
      03.无需预编译
      04.符合W3C标准
    3、XML 命名规则
    XML 元素必须遵循以下命名规则:
    • 名称可以含字母、数字以及其他的字符
    • 名称不能以数字或者标点符号开始
    • 名称不能以字符 “xml”(或者 XML、Xml)开始
    • 名称不能包含空格
    可使用任何名称,没有保留的字
    4、XML 与 HTML 的主要差异
    XML 不是 HTML 的替代。
    XML 和 HTML 为不同的目的而设计:
    XML 被设计为传输和存储数据,其焦点是数据的内容。
    HTML 被设计用来显示数据,其焦点是数据的外观。
    HTML 旨在显示信息,而 XML 旨在传输信息。
    5、XML的组成部分:
    01.文档声明  <?xml version="1.0" encoding="UTF-8"?>
    02.元素    <p></p>
    03.属性    <p  id="haha"></p>
    04.注释   <!-- -->
    05.特殊字符
    06.CDATA区域  Character data   字符數據
    07.处理指令   引入css样式 
    6、XML标签                                                     
    1:XML文档内容由一系列标签元素组成          
    2:所有 XML 元素都须有关闭标签。例:<p>This is a paragraph</p>(在 XML 中,省略关闭标签是非法的。所有元素都必须有关闭标签:)
    3:XML 标签对大小写敏感。例:<message>这是正确的。</message>
    4:XML 必须正确地嵌套。例:<b><i>This text is bold and italic</i></b>
    5:XML 文档必须有根元素(XML 文档必须有一个元素是所有其他元素的父元素。该元素称为根元素。)
    6.空格和换行都是特殊字符 会被解析器解析
     
    XML,HTML都是一个类似于倒挂的树!
    只有一个根节点,枝叶茂盛!
    我们把这个倒挂的树称之为===》dom树!
    DOM:(Doucument Object Model)文档对象模型!
     
    特殊字符:
    >   &gt;
    <   &lt;
    &   &amp;
    '   &apos;
    "   &quot;
     
    CDATA区域: XML解析器不会处理,而是当成字符串原样输出!
    <![CDATA[xml内容]]>

    解析xml文件的方式:
        01.DOM:基于xml文档树结构的解析,把xml文件中的内容都读取到内存中,
             比较占内存,消耗资源多!
        02.SAX:基于事件的解析。消耗资源小!
        03.JDOM:针对于java的特定模型!满足2 8原则!自身没有解析器,依赖于SAX2!
       
    解析XML技术
    DOM
    基于XML文档树结构的解析
    适用于多次访问的XML文档
    特点:比较消耗资源
    SAX
    基于事件的解析
    适用于大数据量的XML文档
    特点:占用资源少,内存消耗小
    DOM4J
    非常优秀的Java XML API
    性能优异、功能强大
    开放源代码
    DOM介绍(DOM解析包:org.w3c.dom)
    文档对象模型(Document Object Model)
    DOM把XML文档映射成一个倒挂的树
     
     
     
    04.DOM4J:for(4)JDOM的一个分支!源码开放,性能优异,功能强大!
    创建第一个maven项目:
    1.new  project===>maven==>quick==>archetypeCatalog=internal
    2.引入需要的pom节点
    3.自定义一个xml文件  (学校  年级  班级)
    4.需求通过dom4j实现查询学校下面的年级以及班级信息
    5.创建一个测试类 书写代码
    DTD:Document Type Definition(文档类型定义)
    01.规范我们的编码
    02.在浏览器中正常的显示

    <!ELEMENT school (grade+),(class|student)>
    ELEMENT :元素,关键字
    school:元素名称
    grade:子元素或者元素类型  CDATA  PCDATA (Parse)解析数据,不能包含子元素
    ():用来给元素分组
    | :两者必须选择一个
    + : 1-N,至少出现一次
    * : 0-N,可有可无,并且可以多次
    ?: 0|1,最多一次
    ,:元素出现的顺序
    DTD文档使用方式:
    01.内部DTD
    <!DOCTYPE 根元素[定义的内容]>
    02.外部DTD
    <!DOCTYPE 根元素 SYSTEM "dtd文件位置">
    02.内外部DTD
    <!DOCTYPE 根元素 SYSTEM "dtd文件位置"[定义的内容]>

  • 相关阅读:
    numpy 矩阵和数组
    python map()
    python matplotlib plot
    python mean()
    预测数值型数据:回归
    散点图
    非均衡分类问题
    AdaBoost元算法
    2.1 n元排列
    1.3 数域
  • 原文地址:https://www.cnblogs.com/3020815dzq/p/9240183.html
Copyright © 2011-2022 走看看