A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© cyahua 中级黑马   /  2018-5-21 15:49  /  544 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 cyahua 于 2018-5-21 15:54 编辑

XML学习笔记

  • 概述:可扩展标记语言
语法
  • XML的基本语法:
    • XML必须有关闭标签
    • 区分大小写
    • 属性需要有引号
    • 标签必须正确嵌套.
  • 文档声明
    • 通常出现在XML的第一行第一列的位置!!!
    • 写法:
      • <?xml 属性名=”属性值” 属性名=”属性值” ...?>
      • version:必须的. 使用”1.0”
      • encoding:字符集. 是使用浏览器打开的时候采用的默认的字符集的编码.
      • sta-dalone:描述XML文档是否需要依赖其他的文件.
  • 注释
     <!-- XML的注释 -->
  • 元素
    • 命名规则
      • 名称可以含字母数字/数字以及其他字符
      • 名称不能以数字或标点符号开始
      • 名称不能以字符"xml"或(XML/Xml)开始
      • 名称不能包含空格
      • 名称中不能包含冒号

  • XML的属性
    • 属性的命名规范和元素的一致
    • 属性需要使用引号
  • 特殊字符


    <
    <
    小于
    >
    >
    大于
    &
    &
    '
    '
    单引号
    "
    "
    双引号
  • CDATA区:(CDATA:Character Data)

    <![CDATA[  内容  ]]>
XML的解析
  • 分为DOM和SAX解析
  • 使用DOM4j+Xpath解析xml

    SAXReader sr = new SAXReader()
    Document document =  sr.read("代表这个xml文档的流");
    List<Node> list = document.selectNodes(String xpathExpression)
    Node node =  document.selectSignalNode(String xpathExpression)
    xpathExpression:
        //元素名称   
        //元素名称[@属性名称]
        //元素名称[@属性名称='属性值']
XML的约束
  • DTD和Schema区别:
    • DTD语法是自成一体的.Schema语法就是XML的语法.
    • Schema的语法就是XML的语法所以更容易被解析器所解析.
    • Schema支持名称空间.
    • Schema有比DTD更加强大的语义和语法的约束.


0 个回复

您需要登录后才可以回帖 登录 | 加入黑马