2015/9/1
1. 流操作
流操作完毕后,必须关闭流,如果流不关闭,那么不会释放流操作时占用的资源,而且写入流有可能写不进数据。
2.对象序列化
当需要传输对象时,由于对象中封装了很多属性和方法,数据量庞大,所以在传输对象前,需要将对象打散成字节序列,以利于传输。这个过程叫对象序列化。到达目的地后,又需要将二进制序列还原成对象,这个过程叫反序列化。
如果需要将一个对象进行传输,那该对象必须实现java.io.Serializable接口
3. XML
XML:可扩展的标记语言,以标记和子标记来描述对象及属性的。
4. XML的根元素
每个XML文档必须有且只有一个根元素
根元素是一个完全包括文档中其他所有元素的元素。
所有的元素都必须在根元素中定义
5.XML实体
- &1t: <
- >:>
- &:&
- ":”
- &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文档的事件驱动模型
- 使用回调机制将事件通知应用程序
特点
- 不必将整个文件加载到内存中,占用的内存少
- 不能对文档进行随机访问
- SAX是只读的
- 文档只能遍历一次