网络编程
位置:首页>> 网络编程>> XML编程>> 实例演练ASP+XML编程

实例演练ASP+XML编程

作者:gwd 来源: * 制作指南 发布时间:2007-10-11 13:53:00 

标签:xml,编程,asp,dom

内容摘要:本文是一篇实例讲解的文章。作为一个普通的程序员,我深知,一个优秀的例程,对于正在学习编程的人是多么的有帮助。本文中使用的例程,是一个联系信息管理程序,我也是写来以方便自己和朋友们互相联系用的。但麻雀虽小,五脏俱全,相信对正在学习ASP+XML编程的朋友们,还是具备一定的参考价值的。

读者可以通过此实例,了解在ASP(Active Server Page)中如何操纵XML文件,并进行数据的各种处理,包括XML节点的建立、修改、删除和保存等等。文中涉及到的技术包括ASP,VBScript,DOM,XML和XSL等。
本文未对使用到的技术进行深入的理论介绍,因此,读者需要具备一定的相关知识,尤其是对ASP、XML和DOM应该有一定的了解。通读本文,并参考源代码,相信读者一定可以熟练地掌握XML编程。

一、程序说明
例程基于B/S结构,使用XML文件存储联系信息,然后通过一个VBScript写的Class,使用DOM,对XML文件中的联系信息进行各种操作。
例程提供的代码采用了统一的命名规范,主要包括:用三个字母的缩写说明变量类型,如数字类型——int,字符串类型——str,对象——obj,等等,虽然在ASP/VBScript中,不区分数据类型,但使用明显的数据类型说明,对程序的编写和维护还是很有意义的;使用有意义的变量名称,如XMLDocument对象,定义为objXmlDoc,等等,同样,这样做的也是为了更好地编写和维护程序。
此程序可以分为后台数据处理和前台界面表现两部分。
程序后台,使用VBScript编写了一个Class,这是在VBScript5.0版中提供的新特性。虽然这里Class的概念和真正的面向对象相去甚远,但是,在ASP中合理地使用Class,还是可以在一定程度上提高程序的运行效率和可维护性。
前台表现,使用XSL对XML文件中的数据进行了格式化,然后以HTML的形式输出到客户端,充分体现了XML技术带来的灵活性与可定制性。格式化的过程放在了服务器端,使用ASP程序完成,这样,客户端得到的是经过格式化之后的HTML信息,避免了兼容性问题的出现。
当然,程序对于具体的操作细节未作非常严格的检验,比如联系信息必填项的检查,但是,对于在ASP中使用DOM操作XML的有关部分,程序提供了完整的示例代码。

  二、XML文件说明(persons.xml)
例程中使用到的XML文件结构十分简单,并且没有定义相关的Schema或者DTD,因为,对于此程序这是不必要的。当然,如果读者愿意自己定义一个的话,也不会对程序的运行产生影响。
程序的数据结构定义如下,Persons集合,它包含多个Person对象,每一个Person对象包括姓名Name、英文名Nick、手机Mobile、电话Tel、电子邮件Email、腾讯QQ和所在公司Company的属性。将以上定义对应到XML文件即,Persons为根节点,Person为Persons的子节点,Name、Nick、Mobile、Tel、Email、QQ和Company为Person的子节点。
这样,我们得到的XML文件内容如下:


<?xml version="1.0" encoding="gb2312"?>
<Persons>
<Person>
     <Name>小东</Name>
<Nick>gwd</Nick>
<Mobile>139XXXXXXXX</Mobile>
<Tel>XXXXXXXX</Tel>
<Email>gwd@chinaren.com</Email>
<QQ>7066015</QQ>
<Company>XXX</Company>
<Person>
</Person>

读者需要注意<?xml version="1.0" encoding="gb2312"?>这一行,XML默认不支持中文,通过设置encoding属性,才可以使XML正确地显示中文。读者可以在IE5.0及以上版本的浏览器中访问此文件,它会以 树型结构把数据显示出来。

0
投稿

猜你喜欢

  • Update 语句Update 语句用于修改表中的数据。语法:UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值P
  • 今天发现百度图片搜索结果的2级页面改版了,在浏览图片的时候很好用:如图:在浏览图片的时候,右侧的缩略图是这样交互的:因此,在整个浏览图片的过
  • 在asp中调用sql server的存储过程可以加快程序运行速度,本文介绍了asp使用存储过程的方法。1.调用存储过程的一般方法 先假设在s
  • 我设了个排卖的起始时间然后设了一个结束时间现在要精确到小时比如提示 “离到期时间:1天XX小时”大家有什么想法吗?我就是在小时总是不能实现,
  • CSS布局中可以用javascript判断浏览器版本看如下的javascript脚本: if (window.XMLHt
  • 先看一段HTML代码,在下边这段代码中,这张图片的宽度未知,我想写在CSS中写一行限制最大宽度为50px:<div id=&
  • 数据安全是任何数据服务解决方案中的一个关键要求,而Windows Server 2008和SQL Server 2008结合起来,通过一个基
  • 人们很容易忽视图像img标签的alt属性。然而,它的重要性也无法体现出来,它是有利于网页的accessibility and&nb
  • 网页显示不正常,出现图片错位,文字跑远……等等,别急,试试IE8自带的”兼容性视图”功能吧!其实出现网页显示问题,一般不是您的电脑或者浏览器
  • 阅读上一篇:打造设计你自己的字体 ⅠMyFonts.com上销售的字体总数已经超过55,000个。现有字体的巨大数量表明了一个事实:我们在设
  • <% a="福建是中国的一个省|我们美丽中国的武夷山!" b="中国,我们,武夷山,福建,美国,苹果&q
  • 14个超酷的js显示时间效果,一定有你想要的。正常时间显示运行效果图:<title>正常显示的时钟 - asp之家 - http
  • 用途:图片经常使用onload来改变宽度,但这样会出现图片的闪烁,这个简单的类就是用来解决这个问题的。函数loadImage,用来加载图片,
  • MySQL语句优化的基本原则:◆1、使用索引来更快地遍历表。缺省情况下建立的索引是非群集索引,但有时它并不是最佳的。在非群集索引下,数据在物
  • 程序还不是很精简,以后再修改,程序所用的数据库为-- “冯志宏”-- 所写的--“追捕”--软件中所带IP数据库和“国华软件 Guohua
  • 准备工作去年的时候,青云发表过关于栅格系统的文章 . 我们知道网页的栅格系统是运用固定的格子设计版面布局,使其风格工整简洁. 视觉上来说,栅
  •  你是否对获得MySQL数据库与表的最基本命令的实际操作感到十分头疼?如果是这样子的话,以下的文章将会给你相应的解决方案,以下的文
  • 根据"客服果果"的"十几行的超简日历组件"http://bbs.51js.com/viewthrea
  • 见下,把数字转成条形图、条形码的一个程序:<%Sub ShowChart(ByRef aValues, 
  • 数据库操作类在网上一搜一大把,我这并不比那些好,只是是自己写的,用着更习惯。所以我这个类没有什么特别的地方,只是自己用着习惯罢了,至于效率等
手机版 网络编程 asp之家 www.aspxhome.com