今天学了XML,现在来总结一下。
1.Why?
为什么要学习XML,XML作为服务器和其组件之间的一种配置文件,可以为服务器和其组件之间提供一种统一的数据交换格式
2.What?
XML: extensible markup language(可扩展性标记语言)
3.XML和HTML之间的联系
①出现的先后顺序不同,HTML先出现
②XML更为严格
③XML支持自定义标签
④作用:HTML用于显示数据,XML用于组织数据
⑤HTML可以看成是XML的一个子集
4.HOW?
用途:
①作为一种配置文件
web.xml
c3p0-config.xml
server.xml
框架中的配置文件
②作为一种数据交换格式
ajax
Service
③存储关系型数据
关系型数据库中表中的数据大部分可以保存到XML中
XML文档的组成:
①声明
<?xml version="1.0" encoding="UTF-8"?>
现在的xml标准为2000年制定的version1.0标准,encoding为xml解码字符集,xml文件是由解码器进行解码的。而xml文件本身的编码是由文件编辑器决定的。
②元素
支持自定义的标签
③属性
④文本
⑤注释
⑥xml实体
对特殊字符进行转义
⑦CData区
格式<![CDATA[
SELECT * FROM user WHERE id > 23 and age < 23;
]]>
对这部分的代码不进行解码,原样输出
⑧处理指令
<?xml-stylesheet type="text/css" href="a.css" ?>
⑨根标签
注意:
①声明要么不写,要写就写在第一行。且前边不能有任何的字符
②标签必须正确关闭。
③区分大小写
④根标签只能有一个
⑤属性必须有值
⑥严格区分大小写
上面这部分,要求就是自己能写出xml文档就可以了。
重要的是下面解析的这部分。
来看一张图:
先看左边的dom解析:
DocumentBuilderFactory/DocumentBuilder
需要注意的是这个没有getElementById方法
Dom4j:先要获取根节点
SAXReader reader = new SAXReader();
Document document = reader.read("student.xml");
XPath:需要导入额外的包
再看右边:
SAXParserFactory/SAXParser
XmlPullParserFactory/XmlPullParser
有一个特殊的方法:parser.setInput(new FileReader("student.xml"));
原文地址:http://blog.csdn.net/sloverpeng/article/details/44318891