黑马程序员技术交流社区
标题:
【石家庄校区】 XML 学习笔记
[打印本页]
作者:
cyahua
时间:
2018-5-21 15:49
标题:
【石家庄校区】 XML 学习笔记
本帖最后由 cyahua 于 2018-5-21 15:54 编辑
XML学习笔记
概述:可扩展标记语言
语法
XML的基本语法:
XML必须有关闭标签
区分大小写
属性需要有引号
标签必须正确嵌套.
文档声明
通常出现在XML的第一行第一列的位置!!!
写法:
<?xml 属性名=”属性值” 属性名=”属性值” ...?>
version:必须的. 使用”1.0”
encoding:字符集. 是使用浏览器打开的时候采用的默认的字符集的编码.
sta-dalone:描述XML文档是否需要依赖其他的文件.
注释
<!-- XML的注释 -->
元素
命名规则
名称可以含字母数字/数字以及其他字符
名称不能以数字或标点符号开始
名称不能以字符"xml"或(XML/Xml)开始
名称不能包含空格
名称中不能包含冒号
XML的属性
属性的命名规范和元素的一致
属性需要使用引号
特殊字符
<
<
小于
>
>
大于
&
&
与
'
'
单引号
"
"
双引号
CDATA区:(CDATA:Character Data)
<![CDATA[ 内容 ]]>
XML的解析
分为DOM和SAX解析
使用DOM4j+Xpath解析xml
SAXReader sr = new SAXReader()
Document document = sr.read("代表这个xml文档的流");
List<Node> list = document.selectNodes(String xpathExpression)
Node node = document.selectSignalNode(String xpathExpression)
xpathExpression:
//元素名称
//元素名称[@属性名称]
//元素名称[@属性名称='属性值']
XML的约束
DTD和Schema区别:
DTD语法是自成一体的.Schema语法就是XML的语法.
Schema的语法就是XML的语法所以更容易被解析器所解析.
Schema支持名称空间.
Schema有比DTD更加强大的语义和语法的约束.
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2