◇ 什么是XML
XML是可以扩展的标记语言,是很类似HTML。这些名词定义的官方说法都是不必理会的,对于【面向结果】思考的人来说,更关心的是XML的用途,它到底是用来干什么的?
◇ XML的用途
XML是对数据关系的描述,这一些彼此之间有关联的数据就叫做【关系型数据】,XML能够对这种【关系】进行简明的描述。
XML的用途,简单地说就是对【关系型数据】的存储和传输。
XML在软件系统中,可以作为配置文件使用。
XML的应用技术太多了。随便举几个例子。
1. 以前在web pages方面,XML和XSL的结合使用很常见。
2. office软件保存的文件格式背后都是xml标记
3. 矢量画图软件,比如说Visio,也是基于xml技术。
4. xpath,xquery,xslt,ajax,web services等等
◇ 一个XML文件的构成
XMLL文件的构成,主要由以下几个部分组成:
- 文档声明
- 元素
- 属性
- 注释
- CDATA区 、特殊字符
- 处理指令(processing instruction)
◇ XML的语法规则
- 所有 XML 元素都须有关闭标签
- XML 标签对大小写敏感
- XML 必须正确地嵌套顺序
- XML 文档必须有根元素
- XML 的属性值须加引号
- 特殊字符必须转义
- XML 中的空格会被保留
◇ XML的解析技术
这是学习XML的重点内容,学习XML的解析技术的时候,先要了解几个概念。
DOM——文档对象模型
Java解析XML的步骤
解析器 –> Document对象 –> 根元素 –> 子元素 –> 遍历集合
☆ 第一步 建立解析器
SAXReader sax=new SAXReader();
☆ 第二步 获取document对象
Document document=sax.read(new File("Books.xml"));
☆ 第三步 获取根元素
Element rootElement=document.getRootElement();
☆ 第四步 获取子元素,得到List集合
List list=rootElement.elements();
在这里就可以拿到元素的属性,元素的名字,元素的文本等内容。
XML操作-增删改查
其实,计算机做的所有工作无非就是读和写。所有的操作都是在这两个 操作的基础之上的,所谓万事万物不离乾坤二道。具体的关于计算机哲学的一些漫谈以后再说。
一个xml文档可以看成一个对象。然后就能用java操作对象了。
java的牛气哄哄的口号就是”一切皆对象”。
那么用java操作文档的时候,在java和文档之间肯定有一个逻辑连接处,就是下面这个代码:
SAXReader sax=new SAXReader();
Document document=sax.read(new file("Books.xml"));
这两行代码就把java和xml文档连接起来了。接着就能进行一系列的增删改查的操作了。
逻辑连接处体现的是一种可操作性,是一种转化,将”应用问题”进行转化,是这个问题具有可操作性,然后不断地糅合各个因素,使它们耦合在一起,逐渐形成一个生态,一个系统。