一、XML简介
XML是EXtensible Markup Language的缩写,翻译过来就是可扩展标记语言。所以很明显,XML和HTML一样都是标记语言,也就是说它们的基本语法都是标签。
- 可扩展 三个字表面上的意思是XML允许自定义格式。但这不代表你可以随便写。
- 在XML基本语法规范的基础上,你使用的那些第三方应用程序、框架会通过XML约束的方式强制规定配置文件中可以写什么和怎么写
- XML基本语法这个知识点的定位是:我们不需要从零开始,从头到尾的一行一行编写XML文档,而是在第三方应用程序、框架已提供的配置文件的基础上修改。要改成什么样取决于你的需求,而怎么改取决XML基本语法和具体的XML约束
二、XML配置文件和properties配置文件对比
properties配置文件示例
baidu.jdbc.url=jdbc:mysql://localhost:3306/baidu
baidu.jdbc.driver=com.mysql.cj.jdbc.Driver
baidu.jdbc.username=root
baidu.jdbc.password=root
● 由键值对组成
● 键和值之间的符号是等号
● 每一行都必须顶格写,前面不能有空格之类的其他符号
xml配置文件示例
<?xml version="1.0" encoding="UTF-8"?>
<students>
<student>
<name>张三</name>
<age>18</age>
</student>
<student>
<name>李四</name>
<age>20</age>
</student>
</students>
XML文档声明 这部分基本上就是固定格式,要注意的是文档声明一定要从第一行第一列开始写,前面不可以放任何东西
<?xml version="1.0" encoding="UTF-8"?>
● 根标签
● 根标签有且只能有一个。
● 标签关闭
● 双标签:开始标签和结束标签必须成对出现。
● 单标签:单标签在标签内关闭。
● 标签嵌套
● 可以嵌套,但是不能交叉嵌套。
● 注释不能嵌套
● 标签名、属性名建议使用小写字母
● 属性
● 属性必须有值
● 属性值必须加引号,单双都行
三、XML约束
XML是有约束的,约束用于限定xml内部能编写的内容
约束的实现方式有两种:
- DTD
语法简单,上手快,约束没有Schema细致
- Schema
语法复杂,上手慢,约束比DTD细致
比如:
http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd
如果这个约束的扩展名是.xsd,那么这个就是Schema约束,如果扩展名是dtd,那么就是DTD约束
加上约束后,写标签的时候会有提示,让我们不容易出错!!!