XML一:XML概念与用途;XML文档结构;XML标签书写规则;

XML部分主要内容有:

        ● 什么是XML,XML常用的实用场景;

        ● XML语法规则;

        ● XML语义约束;

        ● 如何利用Java解析XML文件;(这儿会接触到DOM(文档对象模型))

        ● XPath路径表达式;(这个表达式可以简化XML数据提取的过程;同时这个表达式是XML中独有的)

目录

一:XML概念与用途

XML概念:

XML用途:

二:XML文档结构

XML文档必须包含三个要素:

使用Eclipse创建XML文件:

一个XML文件示例:

三:XML标签书写规则

(1)合法的标签名:

(2)适当的注释与缩进

(3)合理使用属性

(4)特殊字符与CDATA标签

(5)有序的子元素


 


一:XML概念与用途

XML概念:

XML没有预置的标签,其中的标签都是我们自己起的;

XML和HTML的比较

例如:


XML用途:

● XML可以作为Java程序的配置描述文件:

这些大概率需要经常修改配置项如果写在Java程序中,每次修改都需要重新编译程序很麻烦;所以将这些配置项写在配置文件中;

以后遇到的Java框架,很多在底层进行应用程序配置时,都使用的XML来存储配置信息;

● 用于保存程序产生的数据

XML拥有良好的人机可读性;可以利用XML进行数据的存储和转移;

● 程序底层的网络传输过程中,XML是标准的数据传输格式

如下协议,就是利用XML进行的书写,在数据传输过程中,发送方可以把数据弄成XML格式,接收方按照XML的格式解析就可以获取到数据;


二:XML文档结构

XML文档必须包含三个要素:

(1)第一行必须是XML声明;

两个属性,

        version:常见的有1.0和1.1,平时一般用1.0;

        encoding:编码方式;UTF-8这种编码方式可以很好的兼容中文;ISO8859-1编码方式不支持仲中文;

(2)整个文档有且只能有一个根节点;

(3)XML标签的书写规则与HTML完全相同;


使用Eclipse创建XML文件:


一个XML文件示例:

<?xml version="1.0" encoding="UTF-8"?>
<!-- 人力资源管理系统-->
<hr>
	<employee no="3306">   <!-- 标签和属性尽量起的有意义,做到见名知意-->
		<name>张三</name>
		<age>31</age>
		<salary>4000</salary>
		<department>    <!-- 标签可以嵌套-->
			<dName>会计</dName>
			<dAddress>4楼103室</dAddress>
		</department>
	</employee>
	<employee no="3307">
		<name>李四</name>
		<age>29</age>
		<salary>5000</salary>
		<department>
			<dName>工程部门</dName>
			<dAddress>4楼105室</dAddress>
		</department>
	</employee>

</hr>

IDE会帮助检查XML是否书写正确,当XML编写正确,没有语法错误时,IDE没有报错提示;

同时可以用你Google浏览器打开书写好的XML文件:

一旦XML有错误:

IDE会报错:

Google浏览器打开的效果:


三:XML标签书写规则

(1)合法的标签名:


(2)适当的注释与缩进


(3)合理使用属性

下面的sn属性和category属性都是自己起的名字;

通常会把标签唯一的身份信息,如id或sn等设置成属性(普遍接受的习惯);而如下商品的“XX空调”等常见的,会重复的设置成节点;标签的信息如无必要,还是尽量设置成节点;


(4)特殊字符与CDATA标签

解决方案1:使用实体引用:

注意:(1)实体引用,带分号;(2)实体引用只适用于特殊符号比较少的情况;

 

解决方案2:使用CDATA标签:

如下面的XML:<lesson>是外层标签,<content>是外=内层标签;里面蓝色方框中有很多特殊字符,如果像把蓝色方框中的内容都作为<content>标签的节点内容:

解决方案如下图:


(5)有序的子元素

如下,在所有<itme>中,里面的子标签顺序都是一致的,第一个是<name>标签,第二个是<price>标签…;这不是强制规范,但这是个约定俗成的习惯

 

XML文件结构和基本语法
若男专栏
09-04 1959
      XML文件结构和基本语法4.1.1               XML文件结构一个XML文件通常包含文件头和文件体两大部分1.         文件头XML文件头由XML声明与DTD文件类型声明组成。其中DTD文件类型声明是可以缺少的,关于DTD声明将在后续的内容中介绍,而XML声明是必须要有的,以使文件符合XML的标准规格。在前面的Flowers.xml文件中的第
XML教程:XML有哪些用途?
09-24
XML是被设计为存储、传输以及交换数据的。XML不是被设计为用来显示数据的。XML可以将HTML与数据分离通过使用XML,您的数据可存储于HTML之外。当我们使用HTML来显示数据时,数据存储于HTML中。通过使用XML,数据可以被存储在单独的XML文件中。这样做的话
xml文件的介绍与使用
猿小许的博客
06-15 2219
一、xml简介 一、xml简介 1.1 xml:可扩展标记语言,是一种简单的存储语言,使用一系列简单的标记来描述数据 1.2 xml文档结构 1.2.1xml声明: 1.2.2 xml标签 1.2.3 xml标签 1.2.4 语法 1.2.5 标签编写注意事项 1.3 编写xml文档 1.4.XML命名空间 1.4.1 作用 1.4.2 默认命名空间 1.4.3 属性命名空间 二、解析xml 2.1常用xml解析技术 2.2 DOM 2.2.1 .简介 2.3 DOM解
XML的基础知识及XMl文件的创建/读取/更新demo详解
最新发布
weixin_44279482的博客
04-02 1482
xml文档的创建,读取,更新(添加节点,修改节点内容,删除节点)
XML:可扩展标记语言
weixin_41765786的博客
07-18 767
XML,ExtensibleMarkupLanguage(可扩展标记语言),由SGML语言发展而来,允许用户自定义标签,可以将标签和内容有效分离。它逐渐演变为一种跨平台的数据交换格式(一种在不同平台、不同系统之间的数据交换格式),一种轻量级的持久化方案(保存简单数据,无需使用数据库)。XML只是纯文本而已,只是一种独立于软件、硬件的数据存储和传输工具。它可对外提供一下信息,但于C、Java这些编程语言不同,XML无法提供任何“动态行为”。...
XML文件结构、语法、元素
静笃塾
05-13 890
XML文件,是可扩展标记语言,可用于数据传输、解析、配置文件等,是通用的数据结构。其与HTML、JSON不用。 一、XML文件结构 <?xml version="1.0" encoding="utf-8"?> <group> <!--学生李四--> <student id="10086"> <name>zhang san</name> <age>18</age&gt
XML文件构成
WinnerBear的博客
01-06 3259
XML全称是Extensible Markup Language,意思是可扩展的标记语言,XML标签是可以由用户自定义的。但是为了限定XML的内容,需要使用xml约束(DTD或Schema),为了获取xml的内容,我们需要用dom4j(常用)进行解析。 XML语法 XML文档说明 &lt;?xml version="1.0" encoding="utf-8"?&gt; &lt;......
XML基本介绍
mapbar_front的博客
08-08 3732
什么是XML XML是一种可扩展标记语言,它有良好的人即可读性,其基本结构,类似于我们的HTML文件,不过它的主要作用和HTML不同。 HTML文件主要用于网页的展示,而XML的作用,更注重数据的记录。还有一些Java工程的配置文件。比如我们的Java-web项目中的web.xml文件XML的基本结构 xml第一行一般是一行申明。<?xml version=“1.0” encoding...
xml经典总结
gotohbu的专栏
08-31 2182
XML(eXtensible Markup Language)是万维网联盟(World Wide Web Consortium W3C)定义的一种可扩展标志语言。    可扩展性指允许用户按照XML规则自定义标记(tags 标签)。强项:轻松表达多层结构的数据;可扩展。优点:平台无关,语言无关。设计目标是描述数据并集中于数据的内容,与显示分离。提醒:不能用XML来直接写网页。即便是包含了XML数据
XML示例
weixin_41897680的博客
05-22 1532
异步加载XML数据 示例1: 加载一个 XML 文件 - 跨浏览器实例 note.xml <note> <to>Tove</to> <from>Jani</from> <heading>Reminder</heading> <body>Don't forget me this weekend!</body> </note> html <body> <div>
php原生开发中对xml文件的增删改操作
骨子里的偏爱
05-18 105
【代码】php原生开发中对xml文件的增删改操作。
xml文件以树形结构显示
11-20
xml文档的各节点以及属性用树形控件显示,属性显示在文本框中
解析XML中的树形结构与DOM文档对象模型
09-24
主要介绍了XML中的树形结构与DOM文档对象模型,文中举了JavaScript解析DOM对象的例子,需要的朋友可以参考下
XML教程:通过一个例子来学习XML的语法
09-24
XML的语法规则既很简单,又很严格。这些规则很容易学习,也很容易使用。正因为如此,创建可读取及操作XML的...一个XML文档的例子XML使用一种可自我描述的简单的语法。<?xml version="1.0" encoding="ISO-8859-1&q
js2xml:将Javascript代码转换为XML文档
02-06
您可以通过安装js2xml: pip install js2xml 例: >> > import js2xml >> > >> > jscode = """function factorial(n) { ... if (n === 0) { ... return 1; ... } ... return n * factorial(n - 1); ... }""" >> >...
scala-xml_2.12-1.0.6-API文档-中文版.zip
06-07
标签:scala、lang、modules、xml、中文文档、jar包、java; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,...
xml文件结构
Alan的专栏
02-24 1223
xml文件由序言,元素(空元素,非空元素)和杂项三部分组成。序言的结构xml的声明信息:版本信息用于说明xml语言是用的版本,版本为1.0或者1.1 :version="1.0"编码信息用于说明xml的编码语言,如果为中文则表示为:encoding="gb2312"文档独立性信息用于说明xml文件是否可以独立而不依赖其它文档:standalone="yes"表示独立显示。
XML文件结构
计算机学习园
06-05 8788
XML文件结构性内容,包括节点关系以及属性内容等等。 元素是组成XML的最基本的单位,它由开始标记,属性和结束标记组成。 就是一个元素的例子,每个元素必须有一个元素名,元素可以若干个属性以及属性值。  xml文件和html文件一样,实际上是一个文本文件。显然大家立刻就会明白,创建xml文件最普通的工具和html一样,就是“记事本”了。 一个xml文件的例子   现在我们暂且使用“记事本
tinyxml2::XMLDocument::Parse怎么使用
05-25
`tinyxml2`是一个轻量级的XML解析库,`tinyxml2::XMLDocument::Parse`是其解析XML文档的函数,使用方法如下: 1. 引入头文件 ```c++ #include "tinyxml2.h" ``` 2. 创建`tinyxml2::XMLDocument`对象 ```c++ tinyxml2::XMLDocument doc; ``` 3. 调用`Parse`函数解析XML文档 ```c++ // 如果XML文件在本地,可以使用LoadFile函数加载 doc.LoadFile("example.xml"); // 如果XML文件在内存中,可以使用Parse函数解析 const char* xml = "<root><element>text</element></root>"; doc.Parse(xml); ``` 4. 处理解析结果 ```c++ // 获取根节点 tinyxml2::XMLElement* root = doc.RootElement(); // 遍历子节点 for (tinyxml2::XMLElement* elem = root->FirstChildElement(); elem != nullptr; elem = elem->NextSiblingElement()) { const char* name = elem->Name(); const char* text = elem->GetText(); printf("name: %s, text: %s\n", name, text); } ``` 需要注意的是,`tinyxml2::XMLDocument::Parse`函数返回值为`tinyxml2::XMLError`枚举类型,表示解析过程中可能出现的错误类型。如果解析成功,返回`tinyxml2::XML_SUCCESS`。因此,可以使用如下方式判断解析是否成功: ```c++ if (doc.Parse(xml) == tinyxml2::XML_SUCCESS) { // 解析成功 } else { // 解析失败 } ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
写文章

热门文章

  • MySQL对数据的基本操作三:UPDATE语句 35664
  • MyBatis进阶五:PageHelper分页插件; 35271
  • 附加:【POST请求:方法参数放在url中和放在body中,有什么区别】;也包括【@Param,@RequestParam,@RequestBody这三个【与接收参数有关】的注解,总结】; 34281
  • Servlet[springmvc]的Servlet.init()引发异常; 33776
  • Chrome的控制台(Console)的用法(超详细,还未细看) 32975

分类专栏

  • 算法与数据结构 付费 18篇
  • (初中级)2:JVM; 4篇
  • (初中级)3:并发; 1篇
  • (初中级)1:Maven; 25篇
  • (商) SpringCloud/Alibaba微服务架构实战 10篇
  • (夏)Spring Cloud微服务开发自媒体项目 112篇
  • 尚硅谷 Spring Cloud课程 2篇
  • (21)Spring Cloud和微服务入门 5篇
  • (19)Spring Boot电商项目 88篇
  • (20)线程池、分布式、Docker、Nginx、MQ:入门 34篇
  • 异常报错问题整理 7篇
  • (13)Linux基础 24篇
  • (17)SSM开发书评网 37篇
  • 设计模式 1篇
  • (18)Spring Boot入门 10篇
  • (8)IntelliJ IDEA开发工具入门 11篇
  • (15)Spring基础:IoC;AOP;JDBC; 52篇
  • 笔记 1篇
  • (12)慕课OA系统(Mybatis项目案例,比较重要!) 40篇
  • (11)Mybatis 27篇
  • (9)JDBC入门 17篇
  • (16)SpringMVC基础:入门,RESTful,拦截器 30篇
  • (7)MySQL基础 33篇
  • (10)框架前置:maven,工厂模式,反射,Lambda; 35篇
  • JVM入门与性能调优
  • (6)企业门户网站案例,项目开发知识点; 20篇
  • (14)Redis 18篇
  • UML 1篇
  • (5)常用功能与过滤器、监听器、FreeMarker; 46篇
  • (4)JavaWeb基础(网页搭建与JavaWeb基础) 37篇
  • Exam&Test 1篇
  • 工具技巧Tips 10篇
  • (3)JavaScript(网页搭建与JavaWeb基础) 17篇
  • Git(版本控制系统) 11篇
  • 前端问题Tips 1篇
  • (2)HTML&CSS(网页搭建与JavaWeb基础) 40篇
  • (1)Java 99篇
  • Java core 笔记 8篇
  • 人工智能-西瓜书 1篇
  • python 13篇

最新评论

  • Java多态四:为什么需要向上转型;为什么需要向下转型

    我带大佬上分: 向下转型为啥不直接new一个对象

  • Git使用方法:创建本地仓库;创建文件并添加到本地仓库;修改文件内容并提交;删除文件并提交;

    Hongtao_1024: 保姆级教程表情包

  • Git使用方法:创建本地仓库;创建文件并添加到本地仓库;修改文件内容并提交;删除文件并提交;

    码农大龙: 作者写的很棒

  • 80:第七章:开发前台首页、作家个人展示页、粉丝等功能:1:内容概述;(总结了,此前已经开发了的内容;)

    weixin_47908378: 我现在学到这里,但是遇到一个问题就是你点击页面刷新,他后台上数据能显示出来,就是前端页面上没用东西,显示未定义什么鬼?

  • MyBatis入门五:MyBatis基本使用三:MyBatisUtils工具类;以查询为例,演示mybatis的一个工作流程;

    正在努力学习的小白袁: 没有xml的代码呢

您愿意向朋友推荐“博客详情页”吗?

  • 强烈不推荐
  • 不推荐
  • 一般般
  • 推荐
  • 强烈推荐
提交

最新文章

  • 89:第七章:开发前台首页、作家个人展示页、粉丝等功能:10:【前台,作家中心:粉丝比例柱状图、饼状图;粉丝地域分布】(前端图表使用Echarts实现;)
  • 88:第七章:开发前台首页、作家个人展示页、粉丝等功能:9:【前台,作家中心,分页查看粉丝列表,接口】;(注意点:简单的条件查询,不一定非得使用tkmybatis的Example的;)
  • 87:第七章:开发前台首页、作家个人展示页、粉丝等功能:8:【显示粉丝数、关注数】;
2022年326篇
2021年427篇
2020年174篇
2018年15篇
2017年10篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

两个鬼故事船务公司起名北京电话300278股票一寸照能让男人瞬间就哭的话苍龙逐日攻略起名字用字偷情宝鉴撰写烘焙起名大全集酷我k歌官网拼多多店铺名起名店铺起测名字打分双胎男人起名色降2万里驱魔甜蜜电影亡命之徒的退休生涯罗姓孩子起名字起名朱姓的晶字起名好不好tga游戏平台竞渡积压公司起名英文唐山起名字起名 禁忌星星游戏迷起名用沐字怎么样秋天的词语小说下载网txt少年生前被连续抽血16次?多部门介入两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”淀粉肠小王子日销售额涨超10倍高中生被打伤下体休学 邯郸通报单亲妈妈陷入热恋 14岁儿子报警何赛飞追着代拍打雅江山火三名扑火人员牺牲系谣言张家界的山上“长”满了韩国人?男孩8年未见母亲被告知被遗忘中国拥有亿元资产的家庭达13.3万户19岁小伙救下5人后溺亡 多方发声315晚会后胖东来又人满为患了张立群任西安交通大学校长“重生之我在北大当嫡校长”男子被猫抓伤后确诊“猫抓病”测试车高速逃费 小米:已补缴周杰伦一审败诉网易网友洛杉矶偶遇贾玲今日春分倪萍分享减重40斤方法七年后宇文玥被薅头发捞上岸许家印被限制高消费萧美琴窜访捷克 外交部回应联合利华开始重组专访95后高颜值猪保姆胖东来员工每周单休无小长假男子被流浪猫绊倒 投喂者赔24万小米汽车超级工厂正式揭幕黑马情侣提车了西双版纳热带植物园回应蜉蝣大爆发当地回应沈阳致3死车祸车主疑毒驾恒大被罚41.75亿到底怎么缴妈妈回应孩子在校撞护栏坠楼外国人感慨凌晨的中国很安全杨倩无缘巴黎奥运校方回应护栏损坏小学生课间坠楼房客欠租失踪 房东直发愁专家建议不必谈骨泥色变王树国卸任西安交大校长 师生送别手机成瘾是影响睡眠质量重要因素国产伟哥去年销售近13亿阿根廷将发行1万与2万面值的纸币兔狲“狲大娘”因病死亡遭遇山火的松茸之乡“开封王婆”爆火:促成四五十对奥巴马现身唐宁街 黑色着装引猜测考生莫言也上北大硕士复试名单了德国打算提及普京时仅用姓名天水麻辣烫把捣辣椒大爷累坏了

两个鬼故事 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化