XML概念
XML,Extensible Markup Language,中文可扩展标记语言,当前广泛用于传输和存储数据。XML仅仅定义了语法,不含任何预定标签,所有标签均为自定义且具有自描述性,所以XML十分简洁和清晰。
XML语法
例子(根据例子对照以下语法规则):
<?xml version="1.0" encoding="utf-8"?>
<root>
<body sex="man">this is lower body</body>
<Body>this is upper Body></Body>
</root>
基本语法:
1、XML元素必须有关闭标签:<root></root>,</root>为关闭标签
2、嵌套层次必须相同,也就是必须正确嵌套
3、XML文档必须有根元素:<root>为根元素
4、XML属性值必须加引号:sex属性的值man:需要加双引号或者单引号
5、特殊字符使用实体引用代替,<和& 需替换为 "<"和"&"具体
基本说明:
1、XML标签对大小写敏感:<Body>和<body>不同
2、encoding属性表明当前XML内容的编码格式
进阶内容:
XSLT(eXtensible Stylesheet Language Transformations) XML样式表语言,用途以一定的格式显示XML数据
XML命名空间,通过在标签前面添加前缀(Prefix:TagName)或者使用xmls属性指定命名空间,用途避免不同XML文件存在同名标签的冲突。
详细XML教程请查看 http://www.w3school.com.cn/xml/index.asp
XML使用
解析方案
DOM(Document Object Model)基于XML文档结构的解析方案,利用XML的树状结构,在内存中构建一个该XML文档的树状模型,进行增删改查操作。
SAX(Simple API for XML)基于事件流的解析方案。将解析过程分解成一个一个动作,例如标签开始时,标签结束时等,并在动作发生的时候通知并根据设定好的处理方法进行处理。
应用场景
DOM:需要多次使用这些数据且可用内存充足
SAX:使用其中的少量数据
Java平台下常用XML工具
DOM4J,JDOM