流和XML的相关

2015/9/1


1. 流操作

流操作完毕后,必须关闭流,如果流不关闭,那么不会释放流操作时占用的资源,而且写入流有可能写不进数据。

2.对象序列化

当需要传输对象时,由于对象中封装了很多属性和方法,数据量庞大,所以在传输对象前,需要将对象打散成字节序列,以利于传输。这个过程叫对象序列化。到达目的地后,又需要将二进制序列还原成对象,这个过程叫反序列化。

如果需要将一个对象进行传输,那该对象必须实现java.io.Serializable接口

3. XML

XML:可扩展的标记语言,以标记和子标记来描述对象及属性的。

4. XML的根元素

每个XML文档必须有且只有一个根元素

根元素是一个完全包括文档中其他所有元素的元素。

所有的元素都必须在根元素中定义

5.XML实体

  • &1t: <
  • &gt:>
  • &amp:&
  • &quot:”
  • &apos:’

属性值用双引号(“”)或单引号(‘)分隔(如果属性值中有’,用”分隔;有“,用‘分隔)

一个元素可以有多个属性,它的基本格式为:

<元素名 属性名=”属性值“>

特定的属性名称在同一个元素标记中只能出现一次

属性值不能包括<,>,&

6.CDATA

用于把整段文本解释为纯字符数据而不是标记的情况。包含大量<>、&或者”字符,CDATA节中所有字符都会被当作元素字符数据的常量部分,而不是XML标记

CDATA是不被解析器解析的文本,文本的标签不会被当作标记,实体不会被展开。

语法:

7.格式良好的 XML

XML文档必须是格式良好的(well-formed)。满足XML基本的语法规则,如果XML文档不是格式良好的,就不能被应用程序和浏览器正确识别和解析。

遵循下列规则的XML文档称为结构完整:

语法规范:

  • 必须有XML声明语句
  • 必须有且仅有一个根元素
  • 标记大小写敏感
  • 属性值用引号
  • 标记成对
  • 空标记关闭

     <a/><a></a>
    
  • 元素正确嵌套

8.有效的XML

格式良好的XML和有效的XML

格式良好的XML必须满足XML基本语法规范

有效的XML文件,除了必须满足XML基本语法规范之外,还必须符合DTD和Schema定义元素规则。

9.XML解析

文档对象模型(DOM),一种基于树结构的API

  • 基于树状结构的API
  • 整个XML文档必须在内存中解析和储存
  • 客户端应用程序就可以随机访问这些对象
  • 大型文档则会造成内存紧张

XML简单API(SAX),一种事件驱动的API

  • SAX提供一种用于解析XML文档的事件驱动模型
  • 使用回调机制将事件通知应用程序
  • 特点

    1. 不必将整个文件加载到内存中,占用的内存少
    2. 不能对文档进行随机访问
    3. SAX是只读的
    4. 文档只能遍历一次
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章