1.Xml文档

Xml 指的是可扩展标记语言(extensible markup language),基本上现在的java主流框架都使用xml来传输和储存数据,是非常重要的一门编程语言(至少在编程领域非常的重要)。

基本的xml语言有如下特性:

  1. Xml编程文档用于储存和传输数据的,这一点和json文档有异曲同工之妙。
  2. Xml文档有嵌套的树形结构。
  3. Xml文档基本的构成是元素,其中每个元素包括开始和闭合标签,这点和html类似,但是xml文档和html文档是有本质上的区别的,html是显示型的编程语言,xml是储存传输型语言,多用于数据传输和储存的信息配置,并且xml文档可以自行定义标签,而html不能。
  4. Xml文档中元素有属性,但是具有多个属性就使用树结构,单个属性可以直接标识。例如:<file type="gif">computer.gif</file>。
  5. Xml文档是有一定的规范,并且一旦出错就不在执行,这一点也是和html不一样,具体不在详述。

2.怎样使用xml文档?

这里只记录一下在主流浏览器中的使用,一般的主流浏览器都包含XMLHttpRequest对象,一般IE5和IE6使用ActiveXObject对象,这个对象可厉害了,可以解析xml文档并读取xml中的元素数据信息,我们一般使用呢就是用的js了。

例如下面的代码:

<html>
<body>
<h1>W3Schools Internal Note</h1>
<div>
<b>To:</b> <span id="to"></span><br />
<b>From:</b> <span id="from"></span><br />
<b>Message:</b> <span id="message"></span>
</div>

<script>
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open("GET","note.xml",false);
xmlhttp.send();
xmlDoc=xmlhttp.responseXML;

document.getElementById("to").innerHTML=
xmlDoc.getElementsByTagName("to")[0].childNodes[0].nodeValue;
document.getElementById("from").innerHTML=
xmlDoc.getElementsByTagName("from")[0].childNodes[0].nodeValue;
document.getElementById("message").innerHTML=
xmlDoc.getElementsByTagName("body")[0].childNodes[0].nodeValue;
</script>

</body>
</html>

结果:

说白了就是解析xml文件中的元素信息显示,这样的话,在比如说像ssm一样的java主流框架的使用就方便很多,在一定程度上还实现了框架的解耦,实现前后端的分离,这一点和json文件有相似之处,特别是在前端页面的应用上更加的方便,同时,作为一个程序员,档次就不一样了,面子上也挂得住。

3.XML文档的命名空间

下面呢,记录一下这个xml文件的命名空间,见过一般java框架中的xml文件的小伙伴都知道,开头总有一大堆看不懂的东西,类似于:

xmlns="http://www.springframework.org/schema/beans"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xmlns:aop="http://www.springframework.org/schema/aop"

xmlns:context="http://www.springframework.org/schema/context"

xmlns:tx="http://www.springframework.org/schema/tx"

下面请允许我娓娓道来:

Xml命名空间是提供避免元素命名冲突的方法,前面说道,xml文件的标签是由开发者定义的,所以就会出现多种冲突的元素存在,可以使用前缀来避免冲突,比如:

<h:table>
<h:tr>
<h:td>Apples</h:td>
<h:td>Bananas</h:td>
</h:tr>
</h:table>

但是这样比较麻烦,我们可以采用xmlns属性来声明,格式为:xmlns:前缀=”URL”(URL:统一资源标识符 uniform resource identifier)。当然,可以使用默认的命名空间,格式为:xmlns:”namespaceURL”。

当然,像&,<等字符是元素内容中的非法字符,xml文档中跳过编译可以使用CDATA标识:

如:<script>
<![CDATA[
function matchwo(a,b)
{
if (a < b && a < 0) then
{
return 1;
}
else
{
return 0;
}
}
]]>
</script>

下面说一下这xml dom :

DOM 就是文本对象,其中这个对象可以对于xml文档进行解析操作,前面提到过,但是前面没提到的是它还可以实现xml文档元素的增,删。获取元素属性,值,比较安逸,具体感兴趣的小伙伴可以尝试一下。

4.总结

XML 可用于交换、共享和存储数据。

XML 文档形成 树状结构,在"根"和"叶子"的分支机构开始的。

XML 有非常简单的 语法规则。带有正确语法的 XML 是"形式良好"的。有效的 XML 是针对 DTD 进行验证的。

XSLT 用于把 XML 转换为其他格式,比如 HTML。

所有现代的浏览器有一个内建的 XML 解析器,可读取和操作 XML。

DOM(Document Object Model)定义了一个访问 XML 的标准方式。

XMLHttpRequest 对象提供了一个网页加载后与服务器进行通信的方式。

XML 命名空间提供了一种避免元素命名冲突的方法。

CDATA 区域内的文本会被解析器忽略。

我们的 XML 实例也代表了这个 XML 教程总结。

参考文献:

菜鸟教程 xml教程 有不对之处 望指正 仅仅做此记录 怕忘记:http://www.runoob.com/xml/xml-summary.html

xml编程语言的学习相关推荐

  1. python和java哪个-Python和Java两门编程语言,学习哪个更好?

    首先,在选择学习Java编程语言还是Python编程语言之前,得明白自己学习编程的目的是什么?是为了学会变成后跳入互联网企业工作,为转行做准备:还是想快速入门编程语言,学习一份技能傍身,为将来做打算. ...

  2. python和java学哪个好-Python和Java两门编程语言,学习哪个更好?

    首先,在选择学习Java编程语言还是Python编程语言之前,得明白自己学习编程的目的是什么?是为了学会变成后跳入互联网企业工作,为转行做准备:还是想快速入门编程语言,学习一份技能傍身,为将来做打算. ...

  3. Windows编程语言VBA学习(二)——VBA基础

    通过上一篇文章我们可以了解到VBA的使用方式. 这一篇就介绍一下VBA编程的基本语法 在学习之前需要先声明--VBA仅在Microsoft Office软件上有效,使用WPS的话请去查找JSA语法,避 ...

  4. Windows编程语言VBA学习(三)——使用VBA操作Excel

    在之前的文章中我们学习了VBA的基本语法,接下来我们就要学习如何使用VBA开发宏命令脚本,如何与Excel进行交互. 我了解的内容仅限于我自己的使用,可能并不系统,还请谅解. 首先我们可能需要操作Sh ...

  5. 2019年最流行的七大编程语言:学习编程,你会选择哪一种语言呢?

    在计算机使用越来越广泛的今天,编程已经成为了一项基本技能.很多人在选择编程的时候总会犹豫,拿不定主意,总不能一口气学个三五种吧,所以L君今天给大家分析七种编程语言的特点,看看哪种适合你. 一.Java ...

  6. 编程语言python培训-0基础转行IT,编程语言应该学习Java还是Python呢?

    首先你纠结的点:是学Java还是Python?我理解你纠结的点可能是:转行的话是Java好上手?还是Python好上手?能更快学成后入职,毕竟成家有房贷,有车和老婆.每个月都有一大笔开支在等着. /& ...

  7. 程序员想要设计一门新的编程语言,学习什么语言好,用C/C++合适吗?

    是的,最好使用C++.这里说的设计创造一门语言,我猜是想创建一门解释性语言,下面我来列举四种常见的解释性语言,看看它们是怎么被实现的. Python.当下最流行的语言,Python的底层主要是由C.C ...

  8. XSD(XML Schema Definition)学习笔记

    今天学习了XSD相关的知识,为了以后查找的方便,写一些笔记. 一.什么是XSD? 1.XSD全称:XML Schema Definition.XML Schema 的作用是定义 XML 文档的合法构建 ...

  9. 有关android工程的构建脚本(build.xml)的学习

    学习[android-sdk-linux根目录]/tools/ant/build.xml,觉得如下几点很有用,记录之 1)ant脚本中属性值是于前置定义优化的原则,即属性发生重复定义时,前面定义的值不 ...

最新文章

  1. 视频 + PPT | 打开用户标签 “五扇门”,高效赋能银行业数字化运营
  2. java 映射类_将数据库类型映射到具体的Java类
  3. 前景检测算法(十五)--LOBSTER算法
  4. python怎么命名未知数_用Python解方程
  5. 小程序跳转到其他小程序
  6. 关于解决华硕TUF B360M-PLUS GAMING在WIN10下无网卡驱动的方法
  7. vscode 全局背景图片设置 background
  8. 网页设计如何做?全流程其实只有这五步!
  9. 【攻防世界7-12题】题解和解题心得
  10. 密码学之BGN同态加密算法
  11. 《人生的智慧》——人所拥有的财产
  12. flannel 介绍(UTP、VXLAN、Host Gateway模式详解)
  13. html+css仿QQ邮箱静态界面
  14. 对农行金e顺k令的一些猜测
  15. 计算机学院认知实习报告
  16. Java中浮点数原理及精度丢失问题
  17. 【2020年牛客暑假第八场】E题 Enigmatic Partition
  18. RabbitMQ(Java操作工作队列-按劳分配方式)
  19. 人脸识别 | Hi 你说,彭于晏是猫咪还是人,还是?
  20. NIST《2021年网络安全和隐私年度报告》记录

热门文章

  1. 基于jsp的项目管理平台系统设计与实现(项目报告+答辩PPT+源代码+数据库+截图+部署视频)
  2. 创建百度地图开发者应用API 密匙
  3. Gerrit 使用操作手册
  4. 2022秋中国海洋大学《软件工程》第14小组第三次作业
  5. ThemeBuilder自制主题工具详细使用教程
  6. sift特征提取算法
  7. VR App动态更新
  8. [面经整理](机器/深度学习篇)
  9. 地理信息系统专业考研 GIS专业考研 名词解释大全
  10. SSD模拟器之Flashsim