前面JDBC系列算学完了,接下来新学习一个知识点,XML以及XML解析。在学习XML之前,我要说一下我对XML语言的认识。从15年开始我接触Web 自动化,第一个框架的用例就是用xml语法写的。这个框架是一个会写代码的人写给我这样不会代码的人去做web ui自动化的,其实就是封装了一个关键字驱动的框架demo。最近我发现有些公司的测试项目,还是用到了xml文件去写自动化测试用例。其实xml文件是用来存储数据或者交换数据。这里交换数据 指的是早期web请求和响应得到的数据文件都是xml,不过现在大部分设计都是采用json格式。现在软件项目中,xml文件一般是用来当做配置文件。例如jenkins和tomcat中都有很多配置是通过xml文件修改来完成的。
1.什么是XML
XML: eXtensible Markup Language 可扩展标记语言。这里可扩展的理解就是,
xml文件中所有的标签都是自定义的。
2.XML的功能
XML文件功能主要就是存储数据,用途主要两个,作为配置文件和数据传输。
3.HTML和XML的区别
1)html语法松散,xml语法严格,例如html不区分大小写,xml是区分
2)html做页面展示,xml做数据存储
3)html所有标签都是预定义的,xml所有标签都是自定义
4.XML基本语法
1)文档声明
- 必须写在xml文档的第一行
- 写法: <?xml version="1.0" ?>
- 属性:
- version:版本号,固定值1.0, 设计开始到现在只有这么一个版本
- encoding: 指定文档的码表。默认是iso-8859-1, 我们可以utf-8 或者GBK
- standalone: 指定文档是否独立 yes 或者 no
2)元素:xml文档中的标签
* 文档中必须有且只能有一个根元素
* 元素需要正确闭合
* 元素需要正确嵌套
* 元素名称要准守:
* 元素名称区分大小写
* 数字不能开头
3)文本
* 转义字符: >
* CDATA: 里边的数据会原样显示
* eg: <![CDATA[数据内容]]>
4)属性
*属性值必须用引号引起来,单双引号都行。
5)注释
<!-- 这个是注释内容 -->
6)处理指令:现在基本上不用
<?xml-stylesheet type="text/css" href="1.css">
创建一个XML例子
下面写一个xml例子,桌面创建一个test.xml,输入下面内容
<?xml version="1.0" encoding="GBK" ?>
<books>
<book>
<name>冰与火之歌</name>
<price>99</price>
</book>
<book>
<name>Java编程思想</name>
<price>75</price>
</book>
</books>
根据这个xml例子内容,然后再次阅读上面XML语法,第一行是声明这是一个xml文档,后面version="1.0" 这个是属性和属性值。
然后第三行<books> </books>是唯一的根标签,这里标签也叫元素。书名“Java编程思想”就是文本。