• Java基础(十)


    一、XML概述

    属性文件是用来描述程序配置,属性文件包含了一组名/值对。属性文件采用的是一种单一的平面层次结构,同时属性文件要求键是唯一的。

    XML格式能够表达层次结构,并且重复的元素不会被曲解。

    HTML和XML之间的区别:

    1、与HTML不同,XML是大小写敏感的。

    2、在HTML中,如果从上下文中可以分清哪里是段落或列表项的结尾,那么结束标签就可以省略,而在XML中结束标签绝对不能省略。

    3、在XML中,只有单个标签而没有相对应的结束标签的元素必须以/结尾。

    4、在XML中,属性值必须用引号括起来。在HTML中,引号是可有可无的。

    5、在HTML中,属性名可以没有值。在XML中,所有属性必须都有属性值。

    XML文档应当以一个文档头开始(文档头是可选的),文档头之后通常是文档类型定义(文档类型定义是确保文档正确的一个重要机制,但是它不是必需的),最后,XML文档的正文包含根元素,根元素包含其他元素。

    元素可以有子元素,文本或两者皆有。XML元素可以包含属性(属性只应该用来修改值的解释)。

    XML文档的其他标记:

    1、字符引用的形式是&#十进制值;或&#x十六进制值。

    2、实体引用的形式是&name。(<>&"&apos都有预定义的含义:小于、大于、&、引号、省略号)。

    3、CDATA部分用<![CDATA[ 和 ]]>来限定其界限。它们是字符数据的一种特殊形式。你可以使用它们来囊括那些含有<、>、&之类字符的字符串,而不必将它们解释为标记。CDATA部分不能包含字符串]]>,使用这一特性时要特别小心,因为它常用来当作将遗留数据偷偷纳入XML文档的一个后门。

    4、处理指令是那些专门在处理XML文档的应用程序中使用的指令,它们由<?和?>来限定其界限。每个XML都以一个处理指令开头。

    5、注释用<!-和-->限定其界限。注释不应该含有字符串--。注释只能是给文档的读者提供的信息,其中绝不应该含有隐藏的命令,命令应该是用来处理指令来实现的。

    二、解析XML文档

    Java库提供了两种XML解析器:

    1、像文档对象模型解析器这样的树形解析器,它们将读入的XML文档转换成树结构。

    2、像XML简单API解析器这样的流机制解析器,它们在读入XML文档时生成相应的事件。

    三、验证XML文档

    如果要指定文档结构,可以提供一个文档类型定义(DTD)或一个XML Schema定义。DTD或Schema包含了用于解释文档应如何构成的规则,这些规则指定了每个元素的合法子元素和属性。

    四、使用XPath来定位信息。

    五、流机制解析器

    Java类库提供的两种流机制解析器:

    1、SAX解析器:使用的是事件回调。

    2、StAX解析器:提供了遍历解析事件的迭代器。

    六、XSL转换

    XSL转换机制可以指定将XML文档转换为其他格式的规则。

  • 相关阅读:
    如果前面的IO操作出问题了,按照我们代码的意思,不就try catch 了吗,这样的话线程就没关闭了,就会造成线程泄露。 那怎么解决这个问题呢,其实也简单,把关闭线程的方法写到finally里就可以了。
    Dataeye计算任务架构
    Mercury:唯品会全链路应用监控系统解决方案详解(含PPT)
    app 爬虫
    唯品会HDFS性能挑战和优化实践
    构建Hadoop监控共同体
    消除单点故障 flume
    时间戳 Flume's Memory Consumption
    telnet nmap netstap
    hdfs ha
  • 原文地址:https://www.cnblogs.com/libinhyq/p/12456191.html
Copyright © 2020-2023  润新知