XML学习札记

前端之家收集整理的这篇文章主要介绍了XML学习札记前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

参考资料:http://blog.csdn.net/javazat/article/details/3236859



XML概述

  • XML 指可扩展标记语言(EXtensibleMarkupLanguage)
  • XML 是一种标记语言,很类似 HTML
  • XML 的设计宗旨是传输数据,而非显示数据
  • XML 标签没有被预定义。您需要自行定义标签
  • XML 被设计为具有自我描述性

XML.encoding

W3C定义了三条XML解析器如何正确读取XML文件的编码的规则:
1,如果文挡有BOM(字节顺序标记,一般来说,如果保存为unicode格式,则包含BOM,ANSI则无),就定义了文件编码
2,如果没有BOM,就查看XML声明的编码属性
3,如果上述两个都没有,就假定XML文挡采用UTF-8编码

通常情况下,encoding使用UTF-8,以确保万无一失

XML语法

  • XML 文档必须有根元素
  • XML 文档必须有关闭标签
  • XML 标签对大小写敏感
  • XML 元素必须被正确的嵌套
  • XML 属性必须加引号

XSL

XSL 指扩展样式表语言( E Xtensible S tylesheet L anguage)。

XSL 包括三部分:

XSLT 一种用于转换 XML 文档的语言。可以将xml转换成html、xhtml

XPath一种用于在 XML 文档中导航的语言。

XSL-FO一种用于格式化 XML 文档的语言。


XPath

XPath 是一门在 XML 文档中查找信息的语言。XPath 用于在 XML 文档中通过元素和属性进行导航。

节点(Node)——有七种类型的节点:元素、属性、文本、命名空间、处理指令、注释以及文档(根)节点。XML 文档是被作为节点树来对待的。树的根被称为文档节点或者根节点。

项目(Item)——项目是基本值或者节点。

XPath使用路径表达式来选取元素。


XMLHttpRequest 对象

XMLHttpRequest 对象提供了对 HTTP 协议的完全的访问,包括做出 POST 和 HEAD 请求以及普通的 GET 请求的能力。XMLHttpRequest 可以同步或异步地返回 Web 服务器的响应,并且能够以文本或者一个 DOM 文档的形式返回内容

尽管名为 XMLHttpRequest,它并不限于和 XML 文档一起使用:它可以接收任何形式的文本文档。

XMLHttpRequest 对象是名为AJAX的 Web 应用程序架构的一项关键功能

XMLHttpRequest 对象还没有标准化,但是 W3C 已经开始了标准化的工作,本手册介绍的内容都是基于标准化的工作草案。

浏览器解析XML

Internet Explorer 使用 loadXML() 方法来解析 XML 字符串,而其他浏览器使用DOMParser 对象


CDATA

术语 CDATA 指的是不应由 XML 解析器进行解析的文本数据(Unparsed Character Data)。

在 XML 元素中,"<" 和 "&" 是非法的。

CDATA 部分由 "<![CDATA[" 开始,由 "]]>" 结束。


XML DOM

是用于获取、更改、添加删除 XML 元素的标准。

根据 DOM,XML 文档中的每个成分都是一个节点

DOM 是这样规定的:

  • 整个文档是一个文档节点
  • 每个 XML 标签是一个元素节点
  • 包含在 XML 元素中的文本是文本节点
  • 每一个 XML 属性是一个属性节点
  • 注释属于注释节点

文本总是存储在文本节点中



XML解析

常用的解析器有:

DOM 读入整个xml文档,内存占用高,性能差;建立树形结构并访问,易变成,思路和XML规范符合

JDOMJava 特定文档模型,它简化与 XML 的交互并且比使用 DOM 实现更快。JDOM 仅使用具体类而不使用接口。API 大量使用了 Collections 类

DOM4jDOM4J 是一个非常非常优秀的Java XML API,具有性能优异、功能强大和极端易用使用的特点,同时它也是一个开放源代码的软件。

SAX 事件驱动,不用将所有文档读入内存,性能好;操作文档元素较难,同时无法同时获得同一文档中的不同数据g

综合排名如下:DOM4J、SAX、JDOM、DOM

Xerces是由Apache组织所推动的一项XML文档解析开源项目,它目前有多种语言版本包括JAVA、C++、PERL、COM等。 [1]
Xerces是一个开放源代码的XML语法分析器。从JDK1.5以后,Xerces就成了JDK的XML默认实现

Xerces集合了DOM,DOM4J,SAX几种解析器的好处

Ibatis 便是使用的JDK自带的Xerces解析XML

猜你在找的XML相关文章