主要用来传输数据
不同平台之间的传输 需要一个中间的传输 *.xml
xml :可扩展的标记语言,设计用来传输和储存数据,允许开发人员自定义标签的名字,但是要符合一定的规范,
xml和html区别: xml不是html的替代,他们有各自的功能。xml用来传输和储存数据,重点在数据。html设计用来显示数据,重点是数据的展示。
html全称:超文本标记语言 标记:就是标签
version文档的规范 version="1.0"
encoding="UTF-8"文档字符编码
standalone="yes"文档定义是否在一个文件中
注释不能嵌套
<? xml version=1.0 endoding="UTF-8"?>xml声明语句
CDATA是不会被解析的文本,文本的标签不能被当做标记,
Xml声明语法结构
必须有xml声明语句
必须有切只有一个根元素
标记大小写敏感
属性值用引号
空标记关闭 (标签无内容)
元素正确嵌套
Xml元素属性
属性值使用双引号或单引号分割,如果属性值有双引号就用单引号分割,有单引号就用双引号分割
一个元素可以有多个属性,它的属性格式为<元素名 属性名=“属性值”>
特定的属性名称在同一个元素标记汇总只能出现一次
特定的属性名称在同一个元素标记中只能出现一次
属性值不能包括<,>,&
xml文档结构-元素语法
名称中可以包含字母或者数字或则其他字符
名称不能以数字和"_"(下划线开头)
不能以xml/XML/Xml开头
名称终不能含空格
名称不能含冒号(冒号是留给命名空间使用 )
xml技术体系概述
XSL/XSLT: 文档转换技术
xml最大的特点就是内容和格式分离,xml不包含如何显示数据,xls解决了xml数据显示的问题. xsl,xslt可以随意将xml文档转换为html,pdf.
XPath/XQuery:
数据库和sql之间的关系
XML DOM/SAX:
dom:是文档对象模型,定义了一组接口,可以用接口解析或创建html文档,基于对象的,与平台和预言无关的
dom 特点:整个文档必须在你内存解析和储存,数据都在内存,接续获取数据效率高 缺点:对大型文档来说耗内存,占用资源严重。
sax: sax是xml简单应用程序的接口,sax解析文档是基于事件驱动,(用到哪一行就解析哪一行)并且sax使用回调机制来通知桌面应用程序
sax特点:基于事件驱动模型,标签一个一个解析,开始标签和结束标签对应不同的事件,不会将 整个文档加载到内存,不会浪费内存资源,
缺点:要到达指定的位置,只能按照顺序处理,不能随机访问,而且sax只读。(不能修改 ) 文档只能遍历一次。效率不高
XLink/Xpointer
文档定位技术,可以定位节点和节点集。
解析xml的方式
dom sax
dom4j 常用的技术,用的人比较多的技术,大量使用接口,必须导入jar包
Xml实体
dtd文档(文档类型定义) document type definition
主要用来约束xml文档书写的规范 ,xml约束
xml DTD
xml Scheme
引入外部文件
<!ductype 根元素 (PUBLIC或STYTEM)
PUBLIC :如果写public 表示约束的文件来自于网络文件,第一个表示dtd的名字,第二个表示url(地址)
SYSTEM:表示当前的约束条件来自于本地的dtd文件 。直接找到路径