实例演练ASP+XML编程(1)
??读者可以通过此实例,了解在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中,不区分数据类型,但使用明显的数据类型说明,对程序的编写和维护还是很有意义的;使用有意义的变量名称,如xml(标准化越来越近了)document对象,定义为objxml(标准化越来越近了)doc,等等,同样,这样做的也是为了更好地编写和维护程序。
??此程序可以分为后台数据处理和前台界面表现两部分。
??程序后台,使用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及以上版本的中访问此文件,它会以 树型结构把数据显示出来。