XML学习笔记
开发工具与关键技术:MyEclipse 10/Java
作者:cxxone
撰写时间:2019年07月16日
1、概念:Extensible Markup Language 可扩展标记语言
可扩展:标记都是自定义的。<user> <name>
功能:
存储数据:1、配置文件 2、在网络中传输
xml与HTML的区别
1、xml标签都是自定义的,HTML标签都是预定义
2、xml的语法严格,HTML语法松散
3、xml是存储数据,HTML是展示数据
2、语法
2.1 基本语法:(不符合以下要求直接报错)
1、xml文档的后缀名 “.xml”
2、xml第一行必须定义文档声明
3、xml文档中有且仅有一个根标签
4、属性值必须使用引号(单双都可以)引起来
5、标签必须正确关闭
6、XML 标签对大小写敏感
7、XML 必须正确嵌套
2.2 快速入门:
<?xml version='1.0' ?>
<users>
<user id="1">
<name>张三</name>
<name>26</name>
<name>male</name>
</user>
<user id="2">
<name>李四</name>
<name>28</name>
<name>famale</name>
</user>
</users>
3、组成部分:
3.1、文档声明
1、格式:<?xml 属性列表 ?> 注意:尖括号与“?”中间不能出现空格 “?”与xml不能出现空格
2、属性列表:
version:版本号,必须属性
encoding:编码方式。告知解析引擎当前文档使用的编码格式,默认值:ISO-8859-1
standalone:是否独立
取值:yes:不依赖其他文件 no:依赖其他文件
3.2、指令(了解):结合css的
<?xml-stylesheet type="text/css" href="a.css" ?>
3.3、标签:标签名称自定义的
规则:
名称可以包含字母、数字以及其他的字符
名称不能以数字或者标点符号开始
名称不能以字母 xml(或者 XML、Xml 等等)开始
名称不能包含空格
3.4、属性:(属性必须加引号)
id属性值唯一
属性不能包含多个值(元素可以)
属性不能包含树结构(元素可以)
属性不容易扩展(为未来的变化)
3.5、文本:
CDATA区:在该区域中数据会被原样展示
格式:<![CDATA[数据]]>
优点:可用于交换、共享和存储数据,文档形成树状结构,有利于阅读。
缺点:
1、 XML文件庞大,文件格式复杂,传输占带宽;
2、服务器端和客户端都需要花费大量代码来解析XML,导致服务器端和客户端代码变得异常复杂且不易维护;
3、客户端不同浏览器之间解析XML的方式不一致,需要重复编写很多代码;
4、服务器端和客户端解析XML花费较多的资源和时间。(转载)
总结:对于xml的学习,我觉得其实xml与HTML的区别并不大,其语法结构也比较简单的,也比较容易入门上手,xml的出现可以更好地处理一些文件数据,极大的满足了开发人员的需求。