切换导航
首页
技术问答
编程语言
前端开发
移动开发
开发工具
程序设计
行业应用
CMS系统
服务器
频道导航
▸ PHP
▸ Java
▸ Java SE
▸ Python
▸ C#
▸ C&C++
▸ Ruby
▸ VB
▸ asp.Net
▸ Go
▸ Perl
▸ netty
▸ Django
▸ Delphi
▸ Jsp
▸ .NET Core
▸ Spring
▸ Flask
▸ Springboot
▸ SpringMVC
▸ Lua
▸ Laravel
▸ Mybatis
▸ Asp
▸ Groovy
▸ ThinkPHP
▸ Yii
▸ swoole
▸ HTML
▸ HTML5
▸ JavaScript
▸ CSS
▸ jQuery
▸ Bootstrap
▸ Angularjs
▸ TypeScript
▸ Vue
▸ Dojo
▸ Json
▸ Electron
▸ Node.js
▸ extjs
▸ Express
▸ XML
▸ ES6
▸ Ajax
▸ Flash
▸ Unity
▸ React
▸ Flex
▸ Ant Design
▸ Web前端
▸ 微信小程序
▸ 微信公众号
▸ iOS
▸ Android
▸ Swift
▸ Hybrid
▸ Cocos2d-x
▸ Flutter
▸ Xcode
▸ Silverlight
▸ cocoa
▸ Cordova
前端之家
XML
01_xml&dom_sax_dom4j编程
01_xml&dom_sax_dom4j编程
2020-05-22
XML
前端之家
前端之家
收集整理的这篇文章主要介绍了
01_xml&dom_sax_dom4j编程
,
前端之家
小编觉得挺不错的,现在分享给大家,也给大家做个参考。
一、XML简介及语法: 1.XML:eXtensible Markup Language(可扩展
标记
语言) 2.产生原因:用来处理大量有关系的数据 3.作用: 1).用来系统传输数据 2).用来存储数据 3).作为软件的
配置文件
4.xml语法: 1).文档声明: 注意:文档声明出现在xml的第一行第一列 <?xml version = "1.0" ?> version 版本号 version
属性
是必须的
属性
encoding 编码集 可选 standalone 是否需要依赖其他的文档 yes/no 2).元素: 1'.元素:
标签
标签
的写法: <span></span> <span/>
标签
的嵌套:必须正确的嵌套 xml有且只有一个根
标签
2'.元素的命名规范: 区分大小写 不能以数字或_开头 不能以xml开头 元素
名称
的中间不能出现空格和冒号 3).
属性
: 一个
标签
可以有多个
属性
,每个
属性
都有自己的
名称
和取值
属性
值一定要使用双引号或单引号引起来 定义
属性
时必须遵循与
标签
相同的命名规范 在xml中,
标签
属性
代表的信息,可以通过子元素来描述 4).注释: <!-- 注释
内容
--> 注释不能嵌套 注释不能出现在文档声明之前 5).特殊字符和CDATA区: 转义字符: < : &alt; > : > & : & " : " ' : ' 空格 : CDATA区:<![CDATA[ 普通文档 ]]> 6).处理指令(PI):用来指挥解析引擎如何解析xml文档
内容
例:<?xml-stylesheet type="text/css" href="1.css"?> 7).
配置文件
: properties:键值对 xml:可以更好的描述层次关系,因为xml是可扩展的
标记
语言 二、xml的约束:DTD 和 Schema 1.DTD:文档类型定义: 编写步骤: 1).xml文档需要出现哪些
标签
、个数是多少 <!ELEMENT 元素
名称
元素类型> 2).
查询
xml的元素类型是什么:简单or复杂 3).在xml中引入dtd 2.DTD引入方式: 1).文档内部: <!DOCTYPE 根
标签
[ <!ELEMENT 元素
名称
元素类型> ... ]> 2).文档外部: 本地:<!DOCTYPE 跟
标签
SYSTEM "xxx.dtd"> 网络:<!DOCTYPE 根节点 PUBLIC "DTD
名称
" "DTD路径"> 3.DTD语法: 1).元素的定义: 1'.语法:<!ELEMENT 元素
名称
元素类型> 2'.元素的类型: #PCDATA :可解析的字符数据 子元素: EMPTY:空元素 ANY:任意 3'.子元素出现的
次数
: + :一次或多次 * :0次或多次 ? :0次或一次 4'.子元素的顺序:,: 子元素出现必须按照顺序 | : 子元素出现是或关系 2).
属性
的定义: 1'.语法:<!ATTLIST 元素
名称
属性
名称
属性
类型
属性
约束> 2'.
属性
类型: CDATA:字符数据(字符串) 枚举:枚举类型 ID:标识的值是唯一的 3'.
属性
约束: #
required
:
属性
必须出现 #IMPLIED:
属性
是可选的 #FIXED:
属性
是固定值 默认值: 3).实体的定义: 语法:<!ENTITY 实体
名称
实体值> 三、xml解析:(解析技术有多种,常用的DOM和SAX) 1.DOM:Document Object Model 文档对象模型 将XML一次性加载到内存中,形成一个树形结构 2.SAX:Simple API for XML.不需要将文档一次性加载到内存中,边读边解析,事件驱动方式 3.DOM和SAX的区别: 1).DOM一次性将文本加载到内存,形成树形结构,优点是方便进行
增加
、
修改
删除
操作,缺点是如果文档非常大,容易导致内存溢出 2).SAX是边读边解析,不易导致内存溢出,不能做
增加
、
修改
、
删除
操作 4.Node:节点 所有的
内容
都是节点,
包括
元素、
属性
、文本、文档 5.Jaxp解析过程: 1).DOM解析: 1'.创建解析器工厂 2'.由解析器工厂来创建解析器 3'.通过解析器解析xml文档 4'.通过Document对象
获取
节点 2).SAX解析: 1'.创建解析器工厂 2'.由解析器工厂来创建解析器 3'.通过解析器解析xml文档--->绑定处理器 6.Dom4j解析过程: 解析过程: 1).获得Document对象 1'.通过读取xml
文件
,获得document对象 SAXReader reader = new SAXReader(); Document document = reader.read("xxx.xml"); 2'.解析xml形式的文本,
获取
document对象 Document document = DocumentHelper.parseText("<members></members>"); 3'.主动创建document对象 Document document = DocumentHelper.createDocument(); 2).通过document对xml文档进行CRUD解析操作 3).将文档写入xml
文件
:(XMLWriter、OutputFormat) XPath:方便
查询
XML的节点,dom4j
支持
XPath
上一篇:XML 从入门到精通(三)Schema教程
下一篇:关于词法方面解析的一些实践
猜你在找的XML相关文章
10分钟掌握XML、JSON及其解析
引言 NOKIA 有句著名的广告语:“科技以人为本”。任何技术都是为了满足人的生产生活需要而...
作者:前端之家 时间:2020-08-12
[CXF REST标准实战系列] 一、JAXB xml与javaBean的转换
Writer:BYSocket(泥沙砖瓦浆木匠) 微博:BYSocket 豆瓣:BYSocket Reprint it anywhere...
作者:前端之家 时间:2020-08-12
[CXF REST标准实战系列] 一、JAXB xml与javaBean的转换
Writer:BYSocket(泥沙砖瓦浆木匠) 微博:BYSocket 豆瓣:BYSocket Reprint it anywhere...
作者:前端之家 时间:2020-08-12
10分钟掌握XML、JSON及其解析
http://blog.jobbole.com/79252/ 引言 NOKIA 有句著名的广告语:“科技以人为本”。任何技...
作者:前端之家 时间:2020-08-12
自定义圆形控件RoundImageView并认识一下attr.xml
(点击上方公众号,可快速关注) 公众号:smart_android 作者:耿广龙|loonggg 点击“阅读原...
作者:前端之家 时间:2020-08-12
10分钟掌握XML、JSON及其解析
引言 NOKIA 有句著名的广告语:“科技以人为本”。任何技术都是为了满足人的生产生活需要而...
作者:前端之家 时间:2020-08-12
10分钟掌握XML、JSON及其解析(上)
(点击上方公众号,可快速关注) 来源: Long Luo 的博客 链接:http://longluo.github.i...
作者:前端之家 时间:2020-08-12
10分钟掌握XML、JSON及其解析(中)
接上文 二、JSON XML很好很强大,但是最近有另外一个时代弄潮儿,这就是JSON。现在JSON的光...
作者:前端之家 时间:2020-08-12
10分钟掌握XML、JSON及其解析(下)
接上文 2.4 如何解析JSON? Android JSON所有相关类,都在org.json包下。 包括JSONObject、...
作者:前端之家 时间:2020-08-12
10分钟掌握XML、JSON及其解析
原文出处: Long Luo 的博客(@Long_Luo) 引言 NOKIA 有句著名的广告语:“科技以人...
作者:前端之家 时间:2020-08-12
编程分类
HTML
HTML5
JavaScript
CSS
jQuery
Bootstrap
Angularjs
TypeScript
Vue
Dojo
Json
Electron
Node.js
extjs
Express
XML
ES6
Ajax
Flash
Unity
React
Flex
Ant Design
Web前端
微信小程序
微信公众号
最新文章
• 10分钟掌握XML、JSON及其解
• [CXF REST标准实战系列] 一
• [CXF REST标准实战系列] 一
• 10分钟掌握XML、JSON及其解
• 自定义圆形控件RoundImage
• 【XML】
• 10分钟掌握XML、JSON及其解
• 10分钟掌握XML、JSON及其解
• 10分钟掌握XML、JSON及其解
• 10分钟掌握XML、JSON及其解
热门标签
更多 ►
关闭广告
单独headers
封装代码
提示错误
整数正则
非0开头
跳页
出页码
antd table
提示URL未注册
公众号支付
vue hash模式
iSlider
车牌键盘
循环图片
echarts 双折
左右布局
DllPlugin
对象创建
打字游戏
圈选
两栏
云函数
蒙版
ES2020
橱窗
无缝滚动轮播
色块碰撞
组件销毁
文档操作