导航:首页 > 编程语言 > xml编程详细讲解

xml编程详细讲解

发布时间:2022-04-23 08:35:54

⑴ xml究竟是什么东西。。有什么用啊。。

XML是一种可扩展标记语言,标准通用标记语言的子集,是一种用于标记电子文件使其具有结构性的标记语言。在电子计算机中,标记指计算机所能理解的信息符号,通过此种标记,计算机之间可以处理包含各种的信息比如文章等。它可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。 它非常适合万维网传输,提供统一的方法来描述和交换独立于应用程序或供应商的结构化数据。

以下我将从几个方面带你了解XML:

(1)XML的作用:

1、丰富文件(Rich Documents)-自定文件描述并使其更丰富; 2、属于文件为主的XML技术应用;

3、标记是用来定义一块数据应该如何呈现;

4、解释数据(Metadata)-描述其它文件或在线信息;

5、属于数据为主的XML技术应用;

6、标记是用来说明一块资料的意义;

7、组态档案(Configuration Files)-描述软件的组态参数。

(2)XML的文档结构:

每个XML文档都由XML序言开始,在前面的代码中的第一行便是XML序言。这一行代码会告诉解析器和浏览器,这个文件应该按照前面讨论过的XML规则进行解析。第二行代码则是文档元素(documentelement),它是文件中最外面的标签是起始标签和结束标签之间的内容)。所有其他的标签必须包含在这个标签之内来组成一个有效的XML文件。XML文件的第二行并不一定要包含文档元素;如果有注释或者其他内容,文档元素可以迟些出现。 页面再往下的一些地方,可以发现标签里有一些特殊的语法。虽然很像XML序言,但实际上是一种称为处理指令(processinginstruction)的不同类型的语法。处理指令(以下简称PI)的目的是为了给处理页面的程序(例如XML解析器)提供额外的信息。PI通常情况下是没有固定格式的,唯一的要求是紧随第一个问号必须至少有一个字母。在此之后,PI可以包含除了小于号和大于号之外的任何字符串序列。

(3)XML的优点:

1.能使用预先定义标记。

2.定义数据的层次。

3.筛选我们只想得到的那部分数据。

4.真正做到国际化。

5.真正实现数据交互

6.可重用。

⑵ xml编程初学适合什么样的软件该怎么开始学习如题 谢谢了

编写XML根本不需要软件,记事本就可以了....真正要知道的只有几个要点: 1,文档结构 。XML文档的结构有个头部说明,可以指定编码和校验规则;后面么就是用<></>写一堆树节点了。学习途径:找几个现成的xml文档看看就知道了。 2,文档规则 。XML的文档结构和内容可以借助工具按指定DTD或Schema来进行自动校验或代码提示(包括节点顺序,可填充数据等等)。学习途径:搜索关键字dtd,schema,xsd,推荐教材: http://www.w3school.com.cn/x.asp 3,到此就基本了解xml了,下面可以联系用java来操作xml ,推荐类库dom4j, http://www.dom4j.org ,按照官方范例或网上的博客写几个简单的例子,重点是d拼装和解析。到此就能满足大多数的开发需要了。 4,进阶。了解xpath ,xpath能帮助你快速读写xml,xmlspy这个工具自带xpath查询器,可以用来练习。dom4j也支持xpath,这时候可以在程序里应用。 4,接着进阶。练习自己写dtd或xsd,并用dom4j来验证xml。这阶段是利用xml来达到某些目的,如规定特定格式的配置文件便于编写xml,一般是架构师的活了。

⑶ 什么是网页XML编程

一. 什么是XML?
这往往是第一个问题,也往往在第一个问题上你就会搞不明白,因为大多的教材上这样回答:
XML是Extensible Markup Language的简写,一种扩展性标识语言。 这是标准的定义。那么什么是标志语言,为什么叫扩展性?已经让人有些糊涂。我想我们这样来理解会好一些:
对HTML你已经非常熟悉了吧,它就是一种标记语言,记得它的全称吗:"Hypertext Markup Language" 超文本标记语言。明白了?同时,HTML里面有很多标签,类似,等,都是在HTML 4.0里规范和定义,而XML里允许你自己创建这样的标签,所以叫做可扩展性。
这里有几个容易混淆的概念要提醒大家:
1.XML并不是标记语言。它只是用来创造标记语言(比如HTML)的元语言。天,又糊涂了!不要紧,你只要知道这一点:XML和HTML是不一样的,它的用处途比HTML广泛得多,我们将在后面仔细介绍。
2.XML并不是HTML的替代产品。XML不是HTML的升级,它只是HTML的补充,为HTML扩展更多功能。我们仍将在较长的一段时间里继续使用HTML。(但值得注意的是HTML的升级版本XHTML的确正在向适应XML靠拢。)
3.不能用XML来直接写网页。即便是包含了XML数据,依然要转换成HTML格式才能在浏览器上显示。
下面就是一段XML示例文档(例1),用来表示本文的信息:
<myfile><br><br>
<title>XML Quick Start</title><br><br>
<author>ajie</author><br><br>
<email>[email protected]</email><br><br>
<date>20010115</date><br><br>
</myfile>
注意:
1.这段代码仅仅是代码,让你初步感性认识一下XML,并不能实现什么具体应用;
2.其中类似< title>,<author>的语句就是自己创建的标记(tags),它们和HTML标记不一样,例如这里的<title>是文章标题的意思,HTML里的<title>是页面标题。

二. XML是新概念吗?
不是。XML来源于SGML,一种比HTML更早的标志语言标准。
关于SGML,我们来简单了解一下,你只需要有个大致概念就可以。
SGML全称是"Standard Generalized Markup Language"(通用标识语言标准)。看名称就知道:它是标志语言的标准,也就是说所有标志语言都是依照SGML制定的,当然包括HTML。SGML的覆盖面很广,凡是有一定格式的文件都属于SGML,比如报告,乐谱等等,HTML是SGML在网络上最常见的文件格式。因此,人们戏称SGML是HTML的"妈妈"。
而XML就是SGML的简化版,只不过省略了其中复杂和不常用的部分。和SGML一样,XML也可以应用在金融,科研等各个领域,我们这里讲的,只是XML在web方面的运用而已。
到这里,你应该有点明白了:XML是用来创建定义类似HTML的标记语言,然后再用这个标记语言来显示信息。

三. 使用XML有什么好处?
有了HTML,为什么还需要用XML?
因为现在网络应用越来越广泛,仅仅靠HTML单一文件类型来处理千变万化的文档和数据已经力不丛心,而且HTML本身语法十分不严密,严重影响网络信息传送和共享。人们早已经开始探讨用什么方法来满足网络上各种应用的需要。使用SGML是可以的,但SGML太庞大,编程复杂,于是最终选择了"减肥"的SGML---XML作为下一代web运用的数据传输和交互的工具。
使用XML有什么好处?来看w3c组织(XML标准制定者)的说明:
XML使得在网络上使用SGML语言更加"简单和直接": 简化了定义文件类型的过程,简化了编程和处理SGML文件的过程,简化了在Web上的传送和共享。
1.XML可以广泛的运用于web的任何地方;
2.XML可以满足网络应用的需求;
3.使用XML将使编程更加简单;
4.XML便于学习和创建;
5.XML代码将清晰和便于阅读理解;
还是抽象了些。让我们在后面的实例教程中慢满体会XML的强大优势吧!

四. XML很难学吗?
如果你有兴趣学习XML,不禁会问:XML难吗?学习XML需要什么样的基础?
XML非常简单,学习容易。如果你熟悉HTML,你会发现它的文档和HTML非常相似,看同样的示例文档(例1):
<?xml version="1.0"?><br><br>
<myfile><br><br>
<title>XML Quick Start</title><br><br>
<author>ajie</author><br><br>
<email>[email protected]</email><br><br>
<date>20010115</date><br><br>
</myfile>
第一行是一个XML声明,表示文档遵循的是XML的1.0 版的规范。
第二行定义了文档里面的第一个元素(element),也称为根元素: <myfile>。这个就类似HTML里的<HTML>开头标记。注意,这个名称是自己随便定义的。
再下面定义了四个子元素:title,author,email,和date。分别说明文章的标题,作者,邮箱和日期。当然,你可以用中文来定义这些标签,看上去更便于理解:
<?xml version="1.0" encoding="GB2312"?>
<文章>
<标题>XML轻松学习手册</标题>
<作者>ajie</作者>
<信箱>[email protected]</信箱>
<日期>20010115</日期>
</文章>
这就是XML的文档,任何掌握HTML的网友都可以直接写出这样简单的XML文档。
另外,学习XML还必须掌握一种页面脚本语言,常见的就是javascript和VB script。因为XML数据是使用script实现HTML中调用和交互的。我们看一个最简单的例子(例2):
1.将下面代码存为myfile.htm
<html>
<head>
<script language="JavaScript" for="window" event="onload">
var xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async="false";
xmlDoc.load("myfile.xml");
nodes = xmlDoc.documentElement.childNodes;
title.innerText = nodesitem(0).text;
author.innerText = nodes.item(1).text;
email.innerText = nodes.item(2).text;
date.innerText = nodes.item(3).text;
</script>
<title>在HTML中调用XML数据</title>
</head>
<body bgcolor="#FFFFFF">
<b>标题: </b>
<span id="title"> </span>
<b>作者: </b>>
<span id="author"></span>
<b>信箱: </b>
<span id="email"></span>
<b>日期:</b>
<span id="date"></span>
</body><br><br>
</html><br><br>
2.将下面代码存为myfile.xml
<?xml version="1.0" encoding="GB2312"?>
<myfile>
<title>XML轻松学习手册</title>
<author>ajie</author>
<email>[email protected]</email>
<date>20010115</date>
</myfile>
3.将它们放在同一个目录下,用IE5以上版本浏览器打开,可以看到效果。 学习并掌握一种script,你将真正了解到XML无比的强大的功能。

五. XML和HTML的区别
XML和HTML都来自于SGML,它们都含有标记,有着相似的语法,HTML和XML的最大区别在于:HTML是一个定型的标记语言,它用固有的标记来描述,显示网页内容。比如< H1>表示首行标题,有固定的尺寸。相对的,XML则没有固定的标记,XML不能描述网页具体的外观,内容,它只是描述内容的数据形式和结构。
质的区别:网页将数据和显示混在一起,而XML则将数据和显示分开来。
我们看上面的例子,在myfile.htm中,我们只关心页面的显示方式,我们可以设计不同的界面,用不同的方式来排版页面,但数据是储存在myfile.xml中,不需要任何改变。
(如果你是程序员,你会惊讶的发现,这与模块化面向对象编程的思想极其相似!其实网页何尝不是一种程序呢?)
正是这种区别使得XML在网络应用和信息共享上方便,高效,可扩展。所以我们相信,XML做为一种先进的数据处理方法,将使网络跨越到一个新的境界。

六. XML的严格格式
吸取HTML松散格式带来的经验教训,XML一开始就坚持实行"良好的格式"。
在XML文档中:
1.所有的标记都必须要有一个相应的结束标记;
2.所有的XML标记都必须合理嵌套;
3.所有XML标记都区分大小写;
4.所有标记的属性必须用""括起来;
另外,XML标记必须遵循下面的命名规则:
1.名字中可以包含字母、数字以及其它字母;
2.名字不能以数字或"_" (下划线) 开头;
3.名字不能以字母 xml (或 XML 或 Xml ..) 开头;
4.名字中不能包含空格。

在XML文档中任何的差错,都会得到同一个结果:网页不能被显示。各浏览器开发商已经达成协议,对XML实行严格而挑剔的解析,任何细小的错误都会被报告。你可以将上面的myfile.xml修改一下,比如将< email>改为< Email>,然后用IE5直接打开myfile.xml,会得到一个出错信息页面.

⑷ java中的xml解析

dom是解析xml的底层接口之一(另一种是sax)
而jdom和dom4j则是基于底层api的更高级封装
dom是通用的,而jdom和dom4j则是面向java语言的
DOM 是用与平台和语言无关的方式表示 XML 文档的官方 W3C 标准。DOM 是以层次结构组织的节点或信息片断的集合。这个层次结构允许开发人员在树中寻找特定信息。分析该结构通常需要加载整个文档和构造层次结构,然后才能做任何工作。由于它是基于信息层次的,因而 DOM 被认为是基于树或基于对象的。DOM 以及广义的基于树的处理具有几个优点。首先,由于树在内存中是持久的,因此可以修改它以便应用程序能对数据和结构作出更改。它还可以在任何时候在树中上下导航,而不是像 SAX 那样是一次性的处理。DOM 使用起来也要简单得多。
XML的四种解析器(dom,sax,jdom,dom4j)原理及性能比较(转自zsq)
1、DOM
DOM 是用与平台和语言无关的方式表示 XML 文档的官方 W3C 标准。DOM 是以层次结构组织的节点或信息片断的集合。这个层次结构允许开发人员在树中寻找特定信息。分析该结构通常需要加载整个文档和构造层次结构,然后才能做任何工作。由于它是基于信息层次的,因而 DOM 被认为是基于树或基于对象的。DOM 以及广义的基于树的处理具有几个优点。
首先,由于树在内存中是持久的,因此可以修改它以便应用程序能对数据和结构作出更改。它还可以在任何时候在树中上下导航,而不是像 SAX 那样是一次性的处理。DOM 使用起来也要简单得多。
另一方面,对于特别大的文档,解析和加载整个文档可能很慢且很耗资源,因此使用其他手段来处理这样的数据会更好。这些基于事件的模型,比如 SAX。
2、SAX
这种处理的优点非常类似于流媒体的优点。分析能够立即开始,而不是等待所有的数据被处理。而且,由于应用程序只是在读取数据时检查数据,因此不需要将数据存储在内存中。这对于大型文档来说是个巨大的优点。事实上,应用程序甚至不必解析整个文档;它可以在某个条件得到满足时停止解析。一般来说,SAX 还比它的替代者 DOM 快许多。
3、选择 DOM 还是选择 SAX ?
对于需要自己编写代码来处理 XML 文档的开发人员来说,选择 DOM 还是 SAX 解析模型是一个非常重要的设计决策。
DOM 采用建立树形结构的方式访问 XML 文档,而 SAX 采用的事件模型。
DOM 解析器把 XML 文档转化为一个包含其内容的树,并可以对树进行遍历。用 DOM 解析模型的优点是编程容易,开发人员只需要调用建树的指令,然后利用navigation APIs访问所需的树节点来完成任务。可以很容易的添加和修改树中的元素。然而由于使用 DOM 解析器的时候需要处理整个 XML 文档,所以对性能和内存的要求比较高,尤其是遇到很大的 XML 文件的时候。由于它的遍历能力,DOM 解析器常用于 XML 文档需要频繁的改变的服务中。
SAX 解析器采用了基于事件的模型,它在解析 XML 文档的时候可以触发一系列的事件,当发现给定的tag的时候,它可以激活一个回调方法,告诉该方法制定的标签已经找到。SAX 对内存的要求通常会比较低,因为它让开发人员自己来决定所要处理的tag。特别是当开发人员只需要处理文档中所包含的部分数据时,SAX 这种扩展能力得到了更好的体现。但用 SAX 解析器的时候编码工作会比较困难,而且很难同时访问同一个文档中的多处不同数据。
4、JDOM
JDOM的目的是成为 Java 特定文档模型,它简化与 XML 的交互并且比使用 DOM 实现更快。由于是第一个 Java 特定模型,JDOM 一直得到大力推广和促进。正在考虑通过“Java 规范请求 JSR-102”将它最终用作“Java 标准扩展”。从 2000 年初就已经开始了 JDOM 开发。
JDOM 与 DOM 主要有两方面不同。首先,JDOM 仅使用具体类而不使用接口。这在某些方面简化了 API,但是也限制了灵活性。第二,API 大量使用了 Collections 类,简化了那些已经熟悉这些类的 Java 开发者的使用。
JDOM 文档声明其目的是“使用 20%(或更少)的精力解决 80%(或更多)Java/XML 问题”(根据学习曲线假定为 20%)。JDOM 对于大多数 Java/XML 应用程序来说当然是有用的,并且大多数开发者发现 API 比 DOM 容易理解得多。JDOM 还包括对程序行为的相当广泛检查以防止用户做任何在 XML 中无意义的事。然而,它仍需要您充分理解 XML 以便做一些超出基本的工作(或者甚至理解某些情况下的错误)。这也许是比学习 DOM 或 JDOM 接口都更有意义的工作。
JDOM 自身不包含解析器。它通常使用 SAX2 解析器来解析和验证输入 XML 文档(尽管它还可以将以前构造的 DOM 表示作为输入)。它包含一些转换器以将 JDOM 表示输出成 SAX2 事件流、DOM 模型或 XML 文本文档。JDOM 是在 Apache 许可证变体下发布的开放源码
5、DOM4J
虽然 DOM4J 代表了完全独立的开发结果,但最初,它是 JDOM 的一种智能分支。它合并了许多超出基本 XML 文档表示的功能,包括集成的 XPath 支持、XML Schema 支持以及用于大文档或流化文档的基于事件的处理。它还提供了构建文档表示的选项,它通过 DOM4J API 和标准 DOM 接口具有并行访问功能。从 2000 下半年开始,它就一直处于开发之中。
为支持所有这些功能,DOM4J 使用接口和抽象基本类方法。DOM4J 大量使用了 API 中的 Collections 类,但是在许多情况下,它还提供一些替代方法以允许更好的性能或更直接的编码方法。直接好处是,虽然 DOM4J 付出了更复杂的 API 的代价,但是它提供了比 JDOM 大得多的灵活性。
在添加灵活性、XPath 集成和对大文档处理的目标时,DOM4J 的目标与 JDOM 是一样的:针对 Java 开发者的易用性和直观操作。它还致力于成为比 JDOM 更完整的解决方案,实现在本质上处理所有 Java/XML 问题的目标。在完成该目标时,它比 JDOM 更少强调防止不正确的应用程序行为。
DOM4J 是一个非常非常优秀的Java XML API,具有性能优异、功能强大和极端易用使用的特点,同时它也是一个开放源代码的软件。如今你可以看到越来越多的 Java 软件都在使用 DOM4J 来读写 XML,特别值得一提的是连 Sun 的 JAXM 也在用 DOM4J。
6、总述
JDOM 和 DOM 在性能测试时表现不佳,在测试 10M 文档时内存溢出。在小文档情况下还值得考虑使用 DOM 和 JDOM。虽然 JDOM 的开发者已经说明他们期望在正式发行版前专注性能问题,但是从性能观点来看,它确实没有值得推荐之处。另外,DOM 仍是一个非常好的选择。DOM 实现广泛应用于多种编程语言。它还是许多其它与 XML 相关的标准的基础,因为它正式获得 W3C 推荐(与基于非标准的 Java 模型相对),所以在某些类型的项目中可能也需要它(如在 javascript 中使用 DOM)。
SAX表现较好,这要依赖于它特定的解析方式。一个 SAX 检测即将到来的XML流,但并没有载入到内存(当然当XML流被读入时,会有部分文档暂时隐藏在内存中)。
无疑,DOM4J是最好的,目前许多开源项目中大量采用 DOM4J,例如大名鼎鼎的 Hibernate 也用 DOM4J 来读取 XML 配置文件。如果不考虑可移植性,那就采用DOM4J吧!

⑸ XML 是什么(通俗点,不要那么专业化拜托)

XML其实就是描述数据并记录数据的语言。它使用< >作为标记来解释数据,所以和普通的txt数据文件比起来更清楚明白。它的标记描述方式类似于HTML,但和HTML相比,它的标记是自己定义的,然后数据和格式是分开的。所以XML叫做可扩展置标语言。

比如:
txt文件:
张三,001,男,软件10

而XML文件如下:
<学生列表>
<学生>
<姓名>张三</姓名>
<学号>001</学号>
<性别>男</性别>
<班级>软件10</班级>
</学生>
</学生列表>

是不是看起来清楚多了? 而由于XML的这种多层次的树形结构(类似于硬盘中文件夹的层次结构),所以用编程语言处理起来非常容易。

⑹ XML语言是什么,怎么用

XML是Extensible Markup Language的简写,一种扩展性标识语言。

这是标准的定义。那么什么是标志语言,为什么叫扩展性?已经让

人有些糊涂。我想我们这样来理解会好一些:

对HTML你已经非常熟悉了吧,它就是一种标记语言,记得它的全称吗:"Hypertext Markup Language" 超文本标记语言。明白了?同时,HTML里面有很多标签,类似,

等,都是在HTML4.0里规范和定义,而XML里允许你自己创建这样的标签,所以叫做可扩展性。

这里有几个容易混淆的概念要提醒大家:

1.XML并不是标记语言。它只是用来创造标记语言(比如HTML)的元语言。天,又糊涂了!不要紧,你只要知道这一点:XML和HTML是不一样的,它的用处途比HTML广泛得多,我们将在后面仔细介绍。

2.XML并不是HTML的替代产品。XML不是HTML的升级,它只是HTML的补充,为HTML扩展更多功能。我们仍将在较长的一段时间里继续使用HTML。(但值得注意的是HTML的升级版本XHTML的确正在向适应XML靠拢。)

3.不能用XML来直接写网页。即便是包含了XML数据,依然要转换成HTML格式才能在浏览器上显示。

下面就是一段XML示例文档(例1),用来表示本文的信息:

ajie

[email protected]

20010115

注意:

1.这段代码仅仅是代码,让你初步感性认识一下XML,并不能实现什么具体应用;

2.其中类似title,author的语句就是自己创建的标记(tags),它们和HTML标记不一样,例如这里的title是文章标题的意思,HTML里的title是页面标题。

⑺ XML语言编程

1.<?xml version="1.0" encoding="gb2312"?>
<!DOCTYPE 学生列表 [
<!ELEMENT 学生列表 (班级)*>
<!ELEMENT 班级 (学生)*>
<!ELEMENT 学生 (姓名,性别)>
<!ELEMENT 姓名 (#PCDATA)>
<!ELEMENT 性别 (#PCDATA)>
<!ATTLIST 学生 学号 ID #REQUIRED>
<!ATTLIST 班级 党员 IDREF #IMPLIED>
<!ATTLIST 班级 特定奖学金 IDREF #IMPLIED>
<!ATTLIST 班级 一等奖学金 IDREF #REQUIRED>
<!ATTLIST 班级 二等奖学金 IDREF #REQUIRED>
]>
<学生列表>
<班级 党员="s789398372" 一等奖学金="s789398377" 二等奖学金="s789398372">
<学生 学号="s789398372">
<姓名>小兰</姓名>
<性别>女</性别>
</学生>
<学生 学号="s789398377">
<姓名>小青</姓名>
<性别>女</性别>
</学生>
</班级>
</学生列表>

2.<!DOCTYPE 学生列表 [
<!ELEMENT 学生列表 (说明,学生*) >
<!ELEMENT 说明 (#PCDATA)>
<!ENTITY content "所要求内容">
<!ELEMENT 学生 (学号,姓名,性别,班级,出生年月,入学成绩)>
<!ELEMENT 学号 (#PCDATA)>
<!ELEMENT 姓名 (#PCDATA)>
<!ELEMENT 性别 (#PCDATA)>
<!ELEMENT 班级 (#PCDATA)>
<!ELEMENT 出生年月 (#PCDATA)>
<!ELEMENT 入学成绩 (#PCDATA)>
<!ATTLIST 入学成绩 类别 CDATA #REQUIRED>
]>

⑻ 如何在 Visual Studio 中进行XML编程

XML(可扩展标记语言)是一种提供数据描述格式的标记语言。与其他编程语言相比,其有很大的优势。如可以在多个平台中进行更加准确的内容声明、更加容易的进行检索等等。今天我们来介绍如何在Visual Studio中进行XML编程。 一、XML编程可以提高Visual Studio平台中数据的处理能力。 与其把XML当作一种可扩展标记语言,笔者更愿意把它叫做一种工具。这个工具可以提高Visual Studio平台中数据的处理能力。正如文章开头所说的,XML可以将后台数据与表进行分离。如此的话,两者就可以分工合作。Visual Studio平台只负责数据的逻辑处理,如逻辑运算、条件判断等等,而不需要关心其客户端显示的格式问题。而XML负责在客户端如何显示,如保留几位小数、显示哪些内容、权限控制等等。术业有专攻,这么处理,就可以明显提高Visual Studio平台中应用程序的数据处理能力。 二、使用XML编程工具时要注意安全问题。 虽然可以在Visual Studio平台中实现XML编程语言,但是他们毕竟是不同的产品,其内部的实现机制,如安全机制,有比较大的差异。为此要在这个Visual Studio平台中使用XML工具的话,一些安全方面的问题需要引起程序开发人员的重视。 如在使用XML编辑器的时候,需要注意类的执行权限。XML编辑器是Visual Studio中实现XML的主要途径。通常情况下,这个XML编辑器在系统初次加载时会自动下载。那么如何下载这个XML编辑器才是安全的呢?一般情况下可以通过HTTP的方式下载。但是由于HTTP协议自身的缺陷(其不会对传输的数据进行加密),故有时候出于安全方面的考虑,会对其进行限制。用户通常可以在XML编辑器、杂项工具选项对话框中,设置是否需要禁用HTTP下载。 如在调试时,需要给XSLT调试程序配置合适的权限。XSLT是在Visual Studio平台中调试XML可扩展标记语言的工具。XSLT调试程序会在沙盒型应用程序中对XML脚本语言进行XSLT转换。在转换的过程中,出于安全方面的考虑,程序人员往往需要根据样式表所在处的位置来指定一系列的安全策略。如来自互联网的样式表通常来说存在一定的安全隐患,此时就需要对其权限进行限制。而对于来自用户电脑上或者企业共享服务器上的样式表,相对安全,可以采取完全信任的权限运行。针对样式表的不同位置设置不同的权限,则可以在最大程度上保障安全与效率方面的均衡。 三、如何在Visual Studio 中生成XML Web Services客户端。 通过创建XML Web Services客户端的形式来实现XML,是一个常用的便捷方法。XML Web Services客户端是指使用SOAP消息与Web服务器进行通信的组件和应用程序。XML Web Services客户端其实际的表现形式有两种。一是通过网页形式来实现,即一个Web应用程序;二是通过传统的客户端界面来实现,即跟C/S模式下的客户端类似,只是其采用的协议不同。那么该如何在Visual Studio平台中建立XML Web Services客户端呢?由于在Visual Studio中友好的集成了XML工具,所以要实现这个要求并不难。笔者认为可以归结为如下四个步骤来完成。 第一步创建一个Web服务的代理类。在具体实现之前,程序开发人员要转变一个观念。即在实现XML编程工具的时候,其都是通过类来实现的。也就是说,VisualStudio中内置了许多类,通过这些类来调用XML可扩展标记语言。了解这个前提,对于后面的开发具有很大的帮助。为此要创建XML Web Services客户端的话,首先需要创建一个Web服务的代理类。 第二步在客户端重对刚才创建的类进行处理。如需要在客户端代码中引用刚才创建的代理类,并且需要创建这个代理类的一个实例。在引用代理类的时候,需要注意不同的客户端类型,其引用的方式有所不同。在开发客户端的时候,如果即要采用Web应用程序作为客户端,也需要传统的C/S客户端,那么在开发应用程序中可能需要加入一个必要的判断条件,以增强应用程序的灵活性。举一个简单的例子,如开发一个邮件系统。其即可以直接通过网页来访问邮件,也可以通过outlook邮件客户端来接收邮件。由于采取的客户端类型不同,其代理类的引用方式也有所不同。此时服务器就需要判断用户采用的是哪种类型的客户端。根据判断的结果来确定所需要采用的引用方法。 第三步设置代理类的属性与方法。一般情况下,对于代理类的属性只要采用默认的即可。但是有时候程序开发人员可能不允许匿名访问。如一个电子商务系统,一定要求用户有合法的身份才可以访问。此时就需要更改代理类的属性(更改Credentials属性)。这个属性主要的作用就是用来获取或者设置客户端身份验证的安全凭据。如程序开发人员将这个属性显示设置为需要身份验证凭据时,就会禁止用户匿名访问。设置完属性之后,还需要对这个代理类调用与要与之进行通信的Web服务设置相对应的方法。这里需要注意一点,跟代理类引用一样,用户所采用的客户端类型不同,其方法也有所不同。对于有多个客户端要求的应用软件来说,需要在设置的时候,加入一个判断条件。根据用户所采用的客户端不同,对应不同的方法。否则的话,无论是数据还是在显示格式上,都会与实际的有所差异。 第四步就是对客户端进行调试。在调试的时候,除了要注意功能是否可以实现之外,还需要关注安全方面的问题。在上面的内容中笔者强调过,需要根据XML样式表的位置来设置不同的权限。这可以在保障安全性的同时,提高应用程序的效率。在调试与测试的过程中,有可能为出现“请求因HTTP状态失败:拒绝访问”的错误信息。很多新手在使用XML编程工具的时候,都会遇到这个问题。这主要是因为权限上的错误所造成的。如有可能是没有将安全凭据传递给代理类的凭据缓存。 要解决这个问题的话,就需要对Windows身份验证模式进行配置。如需要配置客户端凭据并将这个凭据传递给使用各种形式的Windows身份验证的Web服务。身份验证是一项比较复杂的工作。在一个开发团队中,往往有专门的技术人员来负责这块内容,其主导这个应用程序的整个安全机制。故具体采用哪种形式的身份认证方式、如何才能够安全的传递凭据,这需要开发人员与安全技术人员共同协商实现。其一个主要的原则就是在保障安全的同时,不要影响到应用程序的性能。在实际工作中,经常会遇到这种错误。系统登陆的时候,速度特别慢。但是登陆以后,其速度就会有显着的改善。这很大一方面原因,就是没有在身份认证与性能之间获得一个平衡。这无形中就给用户造成了不好的影响。 最后笔者总结一下。在Visual Studio平台中生成XML编程时,主要需要注意两点。一是用户所采用的客户端不同,其代理类的引用与对应的方法有所差异。为了提高应用程序的灵活性,在代码中往往需要加入判断条件。或者就开发两个不同类型的客户端。二是安全固然重要,性能也不能够忽视。在实际开发中,要避免登陆过程慢、后续操作快的误区。

阅读全文

与xml编程详细讲解相关的资料

热点内容
老死pdf 浏览:25
云服务器关机网址不见了 浏览:69
余冠英pdf 浏览:755
开发一个app上市需要什么步骤 浏览:28
phpsleep方法 浏览:430
时间同步服务器ip地址6 浏览:926
钢琴谱pdf下载 浏览:524
香港阿里云服务器怎么封udp 浏览:875
APp买海鲜到哪里 浏览:501
辽油社保app总提示更新怎么办 浏览:586
导入源码教程视频 浏览:613
天翼贷app在哪里下载 浏览:186
app开发源码查看器 浏览:516
程序员发展到了一个瓶颈 浏览:120
程序员去机房干嘛 浏览:697
英雄训练师怎么看曾经服务器 浏览:546
魔兽世界单机输入gm命令 浏览:372
51单片机最大负跳距是多少 浏览:418
android聊天控件 浏览:128
导致压缩机坏的原因 浏览:295