学习完了XML,知道它为可扩展标记语言(eXtensible Markup Language),是Internet环境中跨平台的,依赖于内容的技术,是当前处理结构化文档信息的有力工具。扩展标记语言XML是一种简单的数据存储语言,使用一系列简单的标记描述数据。看着这一套官方的定义,对于自己目前对XML的学习,还很难参透这些话的含义。首先,在我的潜意识里,只知道XML可以应用在web开发中,然后查了一些相关的资料,整理了XML大概的一些应用范围,消除了自己狭隘的目光。

1、 配置文件

许多应用都将配制数据存储在各种文件里,比如.INI文件。虽然这样的文件格式已经使 用多年并一直很好用,但是XML还是以更为优秀的方式为应用程序标记配制数据。使用. NET里的类,如XmlDocument和XmlTextReader,将配制数据标记为XML格式,能使其更具 可读性,并能方便地集成到应用系统中去。当然还包括Spring中applicationContext.xml,Hibernate中的hiberante.cfg.xml,Struts2中的struts.xml,log4j中的log4j.xml,web应用中的web.xml,Tomcat中的server.xml等。使用XML配制文件的应用程序能够方便地处理 所需数据,不用像其他应用那样要经过重新编译才能修改和维护应用系统。

2、 数据交换

用XML在应用程序和公司之间作数据交换被列为第一位。 那么为什么XML在这个领域里的地位这么重要呢?原因就是XML使用元素和属性来描述数 据。在数据传送过程中,XML始终保留了诸如父/子关系这样的数据结构。几个应用程序 可以共享和解析同一个XML文件,不必使用传统的字符串解析或拆解过程。 相反,普通文件不对每个数据段做描述(除了在头文件中),也不保留数据关系结构。使 用XML做数据交换可以使应用程序更具有弹性,因为可以用位置(与普通文件一样)或用元素名(从数据库)来存取XML数据。

3、 Web服务

Web服务让使用不同系统和不同编程语言的人们能够相互交 流和分享数据。其基础在于Web服务器用XML在系统之间交换数据。交换数据通常用XML标 记,能使协议取得规范一致,比如在简单对象处理协议(Simple Object Access Protoc ol, SOAP)平台上。 SOAP可以在用不同编程语言构造的对象之间传递消息。这意味着一个C#对象能够与一个 Java对象进行通讯。这种通讯甚至可以发生在运行于不同操作系统上的对象之间。DCOM , CORBA或Java RMI只能在紧密耦合的对象之间传递消息,SOAP则可在松耦合对象之间传 递消息。

4、 内容管理

XML只用元素和属性来描述数据,而不提供数据的显示方法。这样,XML就提供了一个优秀的方法来标记独立于平台和语言的内容。 使用像XSLT这样的语言能轻易地将XML文件转换成各种格式文件,比如HTML, WML, PD F, flat file, EDI, 等等。XML具有的能够运行于不同系统平台之间和转换成不同格式 目标文件的能力使得它成为内容管理应用系统中的优秀选择。

5、 Web集成

现在有越来越多的设备也支持XML了。使得Web开发商可以在个人电子助理和浏览器之间 用XML来传递数据。 为什么将XML文本直接送进这样的设备去呢?这样作的目的是让用户更多地自己掌握数据显示方式,更能体验到实践的快乐。常规的客户/服务(C/S)方式为了获得数据排序或更 换显示格式,必须向服务器发出申请;而XML则可以直接处理数据,不必经过向服务器申 请查询-返回结果这样的双向“旅程”,同时在设备也不需要配制数据库。 甚至还可以对设备上的XML文件进行修改并将结果返回给服务器。想像一下,一台具有互 联网功能并支持XML的电冰箱将会给市场带来多么大的冲击吧。你从此不必早起去取牛奶了!

6、 缓存:这里没有查询到相关的资料,具体怎么做缓存使用,我也不了解

7、 桌面应用程序

8、 数据库

在小的应用程序中,可以用来存放数据。这里我有些以后的是,xml可以作为数据库使用,那么它是不是也可以归结为数据交换那个方面,因为数据库不就是用来交换数据的。

9、 作为标准协议和自定义消息 
标准协议,就比如SOAP,是基于XML的标准协议 在自己的分布式系统中,也可以定义自己的协议,用XML实现,就可以传递只有自己的应用系统才可以识别的协议 。

总之,这些并不能包含XML的所有潜在应用,至少是些最重要的领域。我们只有了解了XML的应用范围,以及给我们带来的好处,才能更好的应用。

XML学习之应用范围相关推荐

  1. XML学习笔记02【xml_解析】

    Java后端 学习路线 笔记汇总表[黑马程序员] XML学习笔记01[xml_基础.xml_约束][day01] XML学习笔记02[xml_解析][day01] 目录 03 xml_解析 xml_解 ...

  2. XML学习笔记01【xml_基础、xml_约束】

    Java后端 学习路线 笔记汇总表[黑马程序员] XML学习笔记01[xml_基础.xml_约束][day01] XML学习笔记02[xml_解析][day01] 目录 01 xml_基础 今日内容 ...

  3. XML - XML学习/XML文件解析器(C++)实现

    XML - XML学习/XML文件解析器(C++)实现 XML概述 ​ XML是一套定义语义标记的规则,这些标记将文档分成许多部件并对这些部件加以标识.它也是元标记语言,用于定义其他与特定领域有关的, ...

  4. XML学习笔记(1)

    XML学习笔记(1) 陈保权 2006-2-27 定义:XML:可扩展标记语言,可扩展表现在我们可以自已定义标记不像HTML那样只能用人家定义好的标记,另外XML对结构化数据由很好的表现,便于软件分析 ...

  5. XML学习总结(1)——XML入门

    2019独角兽企业重金招聘Python工程师标准>>> 一.XML语法学习 学习XML语法的目的就是编写XML 一个XML文件分为如下几部分内容: 文档声明 元素 属性 注释 CDA ...

  6. XML学习笔记之XML的简介

    最近,自学了一段时间xml,希望通过学习笔记的整理能够巩固一下知识点,也希望把知识分享给你们(描红字段为重点): XML(extensible Markup language):可扩展的标记语言,解决 ...

  7. XML学习总结(2)——XML简单介绍

    2019独角兽企业重金招聘Python工程师标准>>> 一.XML概念 Extensible Markup Language,翻译过来为可扩展标记语言.Xml技术是w3c组织发布的, ...

  8. XML学习笔记(二)-- DTD格式规范

    标签(空格分隔): 学习笔记 XML的一个主要目的是允许应用程序之间自由交换结构化的数据,因此要求XML文档具有一致的结构.业务逻辑和规则.可以定义一种模式来定义XML文档的结构,并借此验证XML文档 ...

  9. servlet web.xml学习笔记

    1.<context-param>标签 param-name 设定上下文的参数名称.必须是唯一名称 param-value 设定的参数名称的值 初始化过程: 在启动Web项目时,容器(比如 ...

  10. XML学习(一)————XML简介

    引言 作为数据传输界鼎鼎大名的扛把子,XML被应用于各个方面,但随着弱结构化标记语言如JSON.YAML等的出现,人们慢慢的脱离了XML的统治,但在互联网早期的发展当中XML是不可或缺的一部分,比如各 ...

最新文章

  1. shell数值比较和字符串比较
  2. Android开发之Android studio自动签名打包release 版本的正确姿势(完整版) | 文末尾附有Google官方签名教程
  3. word万维计算机教程,计算机课件word文档.doc
  4. Linux命令工具基础02 文件及目录管理
  5. JAVA 框架-Spring
  6. 三个月计算机培训班,三个月复盘:学完两个设计软件,并开始学画画
  7. 高考封路,大叔骑车强闯
  8. 蔡高厅老师 - 高等数学-阅读笔记 - 01 - 前言、函数【视频第01、02、03、】
  9. 基于python的图像分割并计数
  10. 软件开发作为一种价值领域的研究
  11. css absolute relative 定位
  12. 【矢量分析】工科矢量分析公式大全
  13. 大神之路:Java再撸一遍:Java多特么的线程
  14. distill论文总结(未待续)
  15. Broccoli Tree Creator 使用说明 3_3、Girth Transform Node (周长变换节点)
  16. Swift强大的数组
  17. Python爬取天气数据及可视化分析
  18. 杜克研究生计算机专业,杜克研究生CS专业排名,谨记好好去看
  19. 网新恒天2013年校园招聘笔试
  20. 网易运营微专业_内容运营

热门文章

  1. 爬虫日记(7):用urllib和beautifulsoup来实战抓取新闻
  2. 关于新手入坑vue,页面跳转样式错位刷新又好了的情况
  3. c vb java switch语句是_groovy嵌入switch语句 - Groovy教程
  4. 康奈尔笔记系统介绍和购买
  5. 小程序加入人脸识别_微信小程序实现人脸识别
  6. matlab 距平,[转载]基于Matlab软件进行EOF分解、回归趋势分析,并
  7. matlab不用hist画直方图,matlab可以画直方图
  8. android mvp框架基类,Android MVP架构模式基类封装
  9. 基于网络安全相关的开源项目技术预研分析报告
  10. idea谷歌翻译插件translation失效问题(可行)