关闭

并非万能的XML

2669人阅读 评论(0) 收藏 举报

并非万能的XML

左直拳

XML是个炙手可热的东西,出来很多年了,好象还听说将取代HTML(不过直到今天HTML1.1还健在,其实我认为两者很大程度上并无可比性)。有一次我去面试,人家问我熟不熟悉XML,答曰不会,结果被“人来落闸放狗”地赶了出来。

现在我已经在一些地方应用到了XML。众所周知,。NETXML绑得很紧,比如DataSet,比如WEB SERVICE传递的参数以及返回值。做产品介绍类的网站,如果将产品信息存放在XML文件里,因为不必去查询数据库,速度会很快,同时结合XSL,呈现的样式又很灵活,修改也非常方便。另外,我还很喜欢将程序的配置文件写成XML形式,用DataSet可以不写什么代码就能够读出来。

不过看起来,XML比较适合少量的数据,记录一多,弊端就出来了。之前做的一个网站,需要不定期上传本地系统的数据。采取的办法是本地系统(PB作品)先将数据导出为XML,然后上传此XML文件到网站,读取分析,保存到网站数据库。

刚开始还未发觉有什么不妥,只是速度慢了一点。直到有一天,客户上传了一个包含3万多条记录的文件,不管重复了多少遍,网页最终还是显示“连接已超时”。其实在网页的服务器端代码里,我已经标上

Server.ScriptTimeout = 900;

IIS也已经将网站的连接超时值由120秒设成900秒。

那个文件并不大,只有2M多一点,不过由于记录短,所以数目比较多,有3万多条。我调试了一下,发觉时间既不是耗在上传上,也不是在更新数据库上,而是在文件读取上。

这说明,XML的读取效率不高,也许是因为它采取了明文存取的原因吧。

后来的解决办法是抛弃XML,改用DBF格式,将数据导成DBF文件,然后上传,读取,保存,文件也小,整个过程只须几十秒。

读入DBF主要是靠SQL SERVER。语句如下:

string sql = "INSERT INTO " + table_name + " SELECT * FROM OPENROWSET('MICROSOFT.JET.OLEDB.4.0','dBase IV;HDR=NO;IMEX=2;DATABASE=" + DBF文件所在目录 + "','SELECT * FROM [" + DBF文件名 + "]')";

要执行这条语句,数据库的登录名要具有System.Administrators服务器角色。

0
0
查看评论
发表评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

python十个项目之----万能的XML

其实对于这个python小项目我感触的也不算很深刻,因为总是感觉和项目yi
  • hanST123
  • hanST123
  • 2014-07-28 10:17
  • 1054

JAVA 百万级的数据并发SOCKET编程(已经通过测试)

Java Socket 多线程编程,处理百万级的数据并发。
  • Antares_SANTALEN
  • Antares_SANTALEN
  • 2016-09-06 17:08
  • 5476

让服务器能支持10万并发数秘诀,亲身经历,站在巨人的肩膀上创造

 由于一个项目的访问量越来越大,从原来的几百个,增加到现在50多万个每天,所以阿里的服务器也扛不住了,于是就想办法,查了N多资料,总结了以下方法,才解决这问题,每天一共访问量50多万,并不是同时...
  • lhf198484
  • lhf198484
  • 2016-08-29 11:25
  • 2101

xpath 解析xml 不是万能的,有时候xpath是不行的

@Testpublic void dom4jXpath() throws DocumentException, ParserConfigurationException, SAXException, ...
  • fawen0118
  • fawen0118
  • 2013-08-30 16:40
  • 2749

万能的数据传输格式——XML/json

一、XMLXML简介 1、历史起源 gml(1969)->sgml(1985)->html(1993)->xml(1998) Genaral Markup  language   gml ...
  • qq_36031508
  • qq_36031508
  • 2016-09-07 11:43
  • 136

项目3 万能的XML

对于这些XML,HTML,XHTML等,我只是在考试的时候会填下答案,也知道是网页上用的,但究竟还是只‘听说过,没写过‘。 “在开始本项目之前,建议你花点时间去阅读有关XML的资料。”书说到: ‘...
  • u012323100
  • u012323100
  • 2013-11-17 21:53
  • 666

万能的数据传输格式——XML/json

万能的数据传输格式——XML/json 一、XML简介 1、历史起源 gml(1969)->sgml(1985)->html(1993)->xml(1998) Genaral  Markup ...
  • Huangwenting1990
  • Huangwenting1990
  • 2016-07-13 16:02
  • 1468

Python项目三:万能的XML

分析python基础教程(第二版)中的项目3:万能的XML 本项目从XML文件中读取数据,创建多个html网页,使用python中自带的xml.sax库,代码逻辑比较少。
  • ranky2009
  • ranky2009
  • 2015-07-04 23:59
  • 533

python项目练习三:万能的XML

这个项目的名称与其叫做万能的XML不如叫做自动构建网站,根据一份XML文件,生成对应目录结构的网站,不过只有html还是太过于简单了,如果要是可以连带生成css那就比较强大了。这个有待后续研发,先来研...
  • miao0967020148
  • miao0967020148
  • 2017-05-03 10:32
  • 173

python项目练习三:万能的XML

python项目练习三:万能的XML  这个项目的名称与其叫做万能的XML不如叫做自动构建网站,根据一份XML文件,生成对应目录结构的网站,不过只有html还是太过于简单了,如果要是可以连带...
  • finethere
  • finethere
  • 2014-05-21 19:23
  • 457
    个人资料
    • 访问:2447797次
    • 积分:33344
    • 等级:
    • 排名:第161名
    • 原创:909篇
    • 转载:0篇
    • 译文:0篇
    • 评论:625条
    文章分类
    最新评论