xml学习笔记

一、XML的概述

1XML是可扩展标记语言。

2XML的作用:描述数据

3XML在企业开发中,经常用XML作为配置文件。

二、XML的语法(重点)

1、重要:xml声明,必须出现在文档的第一行。

<?xml version="1.0" encoding="UTF-8"?>

version:属性。取值,1.0.当前使用的XML的版本

encoding:当前xml文件使用的编码。默认是UTF-8

2CDATA

CDATACharacter Data字符数据

作用:把标签当做普通字符对待。

3、转义字符:(记住)

三、XML的约束:DTD(看懂DTD即可)

1、有效的XML,符合约束的xml文件

2、约束技术:DTD(简单,面临着淘汰 Schema

3DTD

约定了xml文件中可以出现的元素、属性等,及他们的顺序和个数。

DTD约束,文件的扩展名.dtd

4、编写DTD的方式:

方式一:dtd内容和xml都在xml文件中

直接把dtd的内容写在xml文件中。

比如:

<?xml version=”1.0” encoding=”gbk”?>

<!DOCTYPE 书架[                 蓝色的是根元素

<!ELEMENT 书架 (+)>

<!ELEMENT 书 (书名,作者,售价)>

<!ELEMENT 书名 (#PCDATA)>

<!ELEMENT 作者 (#PCDATA)>

<!ELEMENT 售价 (#PCDATA)>          红色部分就是dtd的内容

]>

<书架>

</书架>

方式二:dtd作为单独的文件存在(推荐)。文件扩展名.dtd,文件必须用UTF-8编码保存到磁盘上

(重点)如何把外部的dtd引入到xml中。

l dtd文件在本地:

<!DOCTYPE 根元素 SYSTEM  “dtd文件的地址”>

l dtd文件在外地(网上):

<!DOCTYPE 根元素 PUBLIC “dtd的名称” “dtd的路径”>

验证:可以使用xmlDoc

目标:看懂dtd,根据dtd写出你的xml文件来。

四、XML的解析方式概述

1、解析方式:(W3C

l DOMDocument Object Model文档对象模型

Node:节点

Document:代表整棵树

Element:元素

Attr:属性(只有元素才有属性)

Text:文本

有点:增删改查方便,简单

缺点:需要读取整个xml才能构建DOM树。对于比较大的xml,容易导致内存溢出。

l SAXSimpl API for Xml

五、利用JAXP开发包:DOM解析

1、常用的XML解析器:

JAXPDom4JJDom

2JAXP

存在JDK中,SUN公司提供。

Java API for XML Processing=JAXP

由以下包:

org.w3c.dom:标准和规范(学习规范)

javax.xml:具体的实现

原文地址:https://www.cnblogs.com/dandandeyoushangnan/p/4818510.html