您的位置:首页 > 编程语言 > Java开发

java.xml

2015-09-05 20:35 232 查看
可扩展的标记语言。以标记和子标记来描述对象及其属性的。

xml声明一般是XML文档的第一行

<?xml version ="1.0"encoding="UTF-8"?>

<!--这是一个注释-->
注释不能嵌套;

xml根元素

每个xml文档必须有且只有一个根元素。
根元素是一个完全包括文档中其他所有元素的元素
所有元素都必须在根元素中定义

xml中预定义的符号如:”<“,”"“,”>“如果xml文档中出现了这样的数据,使用预定义的实体来代替
实体 ; 符号
&|t ; <
> ; >
&  &
" "
' '

属性值用双引号(”)或但引号(‘)分割(如果属性值中有’,用“分隔:有”,用'分隔)
一个元素可以有多个属性,它的基本格式为:<元素名  属性名=“属性值”>
特定的属性名称在同一个元素标记中只能出现一次
属性值不能包括<,>,&

用于把整段文本解释为纯字符数据而不是标记的情况。包含大量<,>,&或者“字符,

CDATA
CDATA是不被解析器解析的文本。文本内的标签不会被当作标记,实体不会被展开
<![CDATA[
.....
]]>

XML文档必须是格式良好的(Well-formed),满足XML基本的语法规则。如果XML文档不是格式良好的,就不能被应用程序和浏览器正确识别和解析。
语法规范
必须有XML声明
必须有且仅有一个根元素
标记大小写敏感
属性值用引号
标记成对
空标记关闭<a/><a></a>
元素正确嵌套

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

<!--DOCTYPE是定义根元素的意思-->
<!DOCTYPE product[
<!ELEMENT product(product+)>  <!--ELEMENT表示对元素描述()表示该元素的子元素,+表示该子元素最少出现一次,也可以出现多次-->
<!ELEMENT product(name,price,factory)>
<!ELEMENT name(#PCDATA)><!--#PCDATA表示该元素中间的内容只能是文本-->
<!ELEMENT price(#PCATA)>
<!ELEMENT factory(#PCDATA)>
<!ATTLIST product <!--ATTLIST表示对元素的属性进行描述-->
code CDATA #REQUIRED <!--CDATA表示code属性中的内容是文本,#REQUIRED表示该属性必须书写-->
>

]>

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

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

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

特点:
-不必将整个文件加载到内存中,占用的内存少
-不能对文档进行随机访问
-SAX是只读的
-文档只能遍历一次。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: