XML知识总结
1、XML概念及作用?
XML( eXtensible Markup Language,可扩展标记语言)是一种简单的数据存储语言 作用:用来存储和交换数据 无法描述页面的排版和显示形式
2、XML和XHTML的区别
1、XHTML 2、XML 标签
(1)标签都有固定含义 不能去创造新的标签 (2)支持自定义标签,具有扩展性 作用
(1)主要用来显示数据 可以通过标签和属性对页面显示进行排版 (2)用来存储和交换数据 无法描述页面的排版和显示形式
3、创建XML文档
定义了XML的版本和所使用的编码等信息<?xml version="1.0" encoding="UTF-8"?> XML文档的主要部分是元素(1)元素由开始标签、元素内容和结束标签组成(1)元素内容可以包含子元素、字符数据等
(1)XML文档中的注释符号是<!-- -->
4、创建XML文档,管理元素的规则
1.至少需要一个元素
2.XML 标签区分大小写
3.应正确使用结束标签
4.正确嵌套标签
5.应使用合法标签
6.标记名称的长度
7.应定义有效的属性
8.应验证文档
6、被视为格式良好的 XML 文档的条件:
该文档满足最低要求集如果文档不满足任何一个良好格式的要求,则将发生致命错误有效的 XML 文档是符合 Document Type Definition(文档类型定义,DTD)的规则的格式良好的 XML 文档
7、使用DTD生成XML文档
什么是DTD DTD (Document Type Definition文档类型定义) 保证XML文档格式正确性 DTD的结构 DTD 以简单文本文件的形式出现 可 以存储在独立的文件中,也可以嵌入 XML 文档引用 DTD 的 XML 文档将包含 <!DOCTYPE> 声明
8、XML的优势: 1.独立于计算机平台 2.简单性3.可扩展性 4.交互性 5.独立于编程语言 6.灵活性 7.独立于操作系统
9、XML的作用 数据存储:
数据库提供了更强有力的数据存储和分析能力
XML仅仅是存储数据
XML与其他数据表现形式最大的不同是它极其简单,正是这点使XML与众不同
数据交换:由于各个计算机所使用的操作系统、数据库不同,因此数据之间的交换向来是件头痛的事可以使用XML来交换
数据 数据配置: 使用XML配制文件可读性强,灵活性高
10、解析XML方式
目前最常用的XML解析技术:
DOMSAX
Sun公司提供了JAXP (Java API for XML)接口来使用DOM和SAX
org.w3c.dom:W3C推荐的用于使用DOM解析XML文档的接口org.xml.sax:用于使用SAX解析XML文档的接口
11、使用DOM解析XML
DOM是Document Object Model的缩写,即文档对象模型
DOM把XML文映射成一个倒挂的树
使用DOM解析XML文档的步骤:
创建解析器工厂对象
由解析器工厂对象创建解析器对象由解析器对象对指定XML文件进行解析,构建相应DOM树,创建Document对象
以Document对象为起点对DOM树的节点进行增删改查操作。
12、Document对象
Document对象代表了整个XML文档所有其它的Node都以一定的顺序包含在Document对象之内它也是对XML文档进行操作的起点 Document对象的主要方法有:
getElementsByTagName(String):返回一个NodeList对象,它包含了所有给定标签名字的标签
getDocumentElement():返回一个代表这个DOM树的根节点的Element对象,也就是代表XML文档根元素的那个对象
13、NodeList对象
指一个包含了一个或者多个节点(Node)的列表可以简单的把它看成一个Node数组
可以通过方法来获得列表中元素
NodeList对象常用的方法有:
getLength():返回列表的长度item(int):返回指定位置的Node对象
14、Node对象
是DOM结构中最基本的对象,代表了文档树中的一个抽象节点实际使用的时候,很少会真正用到Node这个对象
而是用到诸如Element、Attr、Text等Node对象的子对象
Node对象的主要方法有:
方法名 说 明
getChildNodes 包含此节点的所有子节点的
NodeList getFirstChild() 如果节点存在子节点,则返回第一个子节点
getLastChild() 如果节点存在子节点,返回最后一个子节点
getNextSibling() 返回在DOM树中这个节点的下一个兄弟节点
getPreviousSibling() 返回在DOM树中这个节点的上一个兄弟节点
getNodeName() 根据节点的类型返回节点的名称
getNodeValue() 返回节点的值
getNodeType() 返回节点的类型
14、Element对象 Element对象 代表XML文档中的标签元素
继承自Node对象,是Node最主要的子对象
Element对象的方法: getAttribute(String):返回标签中给定属性名称的属性的值
getElementsByTagName(String):返回具有给定标记名称的所有后代 Elements 的 NodeList
15、使用SAX解析XML
SAX(Simple API for XML)是另一种常用的XML解析技术
SAX解析器不像DOM那样建立一个完整的文档树,而是在读取文档时激活一系列事件
这些事件被推给事件处理器,然后由事件处理器提供对文档内容的访问 与DOM相比,SAX的优点如下:
1、内存消耗小 2、无需为所有节点创建对象
XML知识总结的更多相关文章
- Android开发——xml知识之xml可绘制对象简介
引言:摘录Android用户界面设计 Android支持各类xml可绘制对象,其中一些可绘制对象可用于实现让一个资源使用多个图片文件,另外一些则允许你在xml中真正地指定颜色,还有一些你从来都不会用到 ...
- 一:XML知识整理
一:xml 1. xml简介 a) xml, eXtensible Markup Language, 可扩展标记语言.是一种标记语言. b) xml 是一种非常灵活的语言, 没有固定的标签, 所有的标 ...
- Etree方式解析xml知识积累
movies.xml: <collection shelf="New Arrivals"> <movie title="Enemy Behind&quo ...
- XML知识学习
第一部分[基础篇]: https://www.w3school.com.cn/xml/xml_intro.asp W3C教程地址 什么是 XML? XML 指可扩展标记语言(EXtensible Ma ...
- Xml的简单介绍和Xml格式
XML 被设计用来结构化.存储以及传输信息.HTML 被设计用来显示数据. 1.XML是什么? 1)XML 指可扩展标记语言(EXtensible Markup Language) 2)XML 是一种 ...
- Linq创建带命名空间、前缀、Soap格式的XML
关于XML,我也是刚接触,关于一般常见的XML,博客园.CSDN上的资料很多,对于不常见的带命名空间.前缀.Soap格式的XML的描述相对来说寥寥无几,上一篇我写到了对相对复杂的XML的读操作,下面说 ...
- 【JAVA与XML、dtd约束、Schema约束】
一.XML. (1)XML:Extensible Markup Language (2)XML是一种标记语言. (3)XML的设计宗旨是传输数据,而不是显示数据. (4)XML标签没有被预定义,即使用 ...
- [转]【eoeAndroid索引】史上最牛最全android开发知识汇总
一.开发环境搭建 (已完成) 负责人:kris 状态:已完成 所整理标签为:搭建 SDK JDK NDK Eclipse ADT 模拟器 AVD 调试器(DEBUG) DDMS 测试 日志 Logca ...
- XML系列之--创建电文格式的XML(一)
关于XML,学校那会,老师在口中仅仅提及,自己也未曾深入接触过,仅是些将最基本XML文件内容显示在web定义的表格中之类的简单操作,如今项目中的收发电文涉及到复杂XML的操作.趁此契机好好回顾下XML ...
随机推荐
- 申请SSL证书怎样验证域名所有权
申请域名型证书时,系统将提供以下三种方式验证域名的所有权,请根据自己的实际情况选择其中一种进行域名验证: 1.管理员邮箱验证 系统会向你选择的管理员邮箱 发送验证邮件,能够收到验证邮件,并点击邮件中验 ...
- hdu 2527哈夫曼树(二叉树的运用)
#include<stdio.h> #include<string.h> #define N 100 #define INF 2000000000 int b[N]; c ...
- 刷新PHP缓冲区
为你的站点加速_php技巧 在当前 PHP 版本的默认配置下,“输出缓冲(Output Buffering)”是被打开的.旧版本则不是这样,在旧版本的 PHP 中,字符串在每次被输出的时候(通过 ec ...
- [bzoj1935][Shoi2007]Tree 园丁的烦恼 _树状数组
Tree 园丁的烦恼 bzoj-1935 Shoi-2007 题目大意:给定平面上的$n$个点,$m$次查询矩形点个数. 注释:$1\le n,m\le 5\cdot 10^5$. 想法:静态二维数点 ...
- ZOJ 3213
/* ZOJ 3213 好吧,看过那种括号表示法后,就崩溃了,实在受不了.情况复杂,写了两天,人也有点傻X了,只能放弃,转而用最小表示法. 最小表示法不难写: 1)首先,要承认路径上有格子不选的情况, ...
- 写一个android内置android程序
当我们编译完毕android源代码之后,就须要对他做点什么事情,我如今正在看老罗的"Android源代码情景分析"一书.在这里主要是记录一些书中没有说清楚的地方. 相同.我们创建一 ...
- http自己定义超时检測方法、主动抛出异常
上次为了解决无网路由器超时的问题,将问题重心转移到了HttpClient. HttpUrLConnection上面,什么各种设置ReadTimeout. connectionTimeOut,还有所谓的 ...
- Java中接口和抽象类的比較
Java中接口和抽象类的比較-2013年5月写的读书笔记摘要 1. 概述 接口(Interface)和抽象类(abstract class)是 Java 语言中支持抽象类的两种机制,是Java程序设计 ...
- CON1023 明明的计划
比赛说明 邀请码:a08f 来源:自出 描述:无 难度:NOIP提高组day1 赛时答疑:私信询问 奖励:无 试题列表 赛题 #A:数学题赛题 #B:明明泡妹子赛题 #C:明明去酒店 U5012 数学 ...
- Catalan数(卡特兰数)
Catalan数(卡特兰数) 卡特兰数:规定h(0)=1,而h(1)=1,h(2)=2,h(3)=5,h(4)=14,h(5)=42,h(6)=132,h(7)=429,h(8)=1430,h(9)= ...