1.xml简介
2.语法规则
3.属性、注释、转义字符、CDATA块、处理指令
4.XML解析原理
5.DOM解析
1.xml简介:
top
xml由W3C(万维网联盟)创建,被设计用于传输和存储数据,作为小型的数据库、软件的配置文件,现如今主要是用于软件的配置文件。
据说:由于html语法不够严谨所以便开发了xml,但是html的发展速度及其迅速所以便转移了方向,其有力证明是xml可引入css文件进行网页的布局。
2.语法规则
top
xml与html及其类似,但其标签是自定义的。
<student></student> 开始标签 标签体内容 结束标签
1)<student/> 或 <student></student> 空标签。没有标签体内容
2)xml标签名称区分大小写。
3)xml标签一定要正确配对。
4)xml标签名中间不能使用空格
5)xml标签名不能以数字开头
6)注意: 在一个xml文档中,有且仅有一个根标签
3.属性、注释、转义字符、文档声明、CDATA块
top
3.1:属性:
属性值必须以引号包含,不能省略,也不能单双引号混用!!!
一个标签内可以有多个属性,但不能出现重复的属性名!!!
3.2:注释:
<!-- xml注释 -->
3.3:转意字符:
< <
> >
" "
& &
空格 &nsbp;
。。。。。。
3.4文档声明
语法: <?xml version="1.0" encoding="utf-8"?>
version: xml的版本号
encoding: 解析xml文件时查询的码表(解码过程时查询的码表)
3.5:CDATA块
作用: 可以让一些需要进行包含特殊字符的内容统一进行原样输出。
4.xml解析
top
DOM解析原理:
DOM解析原理:xml解析器一次性把整个xml文档加载进内存,然后在内存中构建一颗Document的对象树,通过Document对象可以得到树上的节点对象,通过节点对象访问(操作)到xml文档的内容。
解析工具
1)JAXP (oracle-Sun公司官方)
2)JDOM工具(非官方)
3)Dom4J工具(非官方)
三大框架(默认读取xml的工具就是Dom4j)
.......
SAX解析原理:
1)Sax解析工具(oracle-sun公司官方)
5.dom解析
top
常用方法:
1 //节点 2 Iterator Element.nodeIterator();//获取当前标签下的所有节点对象 3 //标签 4 Document Document.getRootElement();//获取当前xml文档下的根标签 5 List<Element> Element.elements();//获取所有子标签对象 6 Iterator<Element> Element.elementIterator();//获取所有子标签对象 7 Element Element.getElement("标签名");//获取当前标签下的第一个指定名称子标签对象 8 //属性 9 String Element.attributeValue("属性名称");//获取指定名称的属性值 10 Attribute Element.attribute("属性名");//获取指定名称的属性对象 11 String Attribute.getName();//获取属性对象的属性值 12 String Attribute.getValue();//获取属性对象的属性值 13 List<Attribute> Element.attributes();//获取所有属性对象 14 Iterator<Attribute> Element.attributeIterator();//获取所有属性对象 15 //文本 16 String Element.getText();//获取所有文本内容 17 String Elment.getText("标签名");//获取指定子标签的文本内容
Dom4j的使用步骤
1.导入Dom4j包
2.创建xml解析器对象
1 SAXReader reader = new SAXReader();
3.用xml解析器对象解析一个xml文档,获得一个Document对象
1 Document doc = reader.read(new File("文档路径"));
4.获取根节点
1 Element elem = doc.getRootElement();
5.使用根节点进行各种操作
......