惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
腾讯CDC
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
L
LINUX DO - 热门话题
D
Darknet – Hacking Tools, Hacker News & Cyber Security
Project Zero
Project Zero
V
Vulnerabilities – Threatpost
Cisco Talos Blog
Cisco Talos Blog
P
Palo Alto Networks Blog
C
Cisco Blogs
A
Arctic Wolf
月光博客
月光博客
The GitHub Blog
The GitHub Blog
T
The Blog of Author Tim Ferriss
量子位
小众软件
小众软件
Latest news
Latest news
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Microsoft Security Blog
Microsoft Security Blog
T
The Exploit Database - CXSecurity.com
Security Latest
Security Latest
N
Netflix TechBlog - Medium
K
Kaspersky official blog
人人都是产品经理
人人都是产品经理
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
博客园_首页
Y
Y Combinator Blog
P
Proofpoint News Feed
H
Hackread – Cybersecurity News, Data Breaches, AI and More
M
MIT News - Artificial intelligence
T
Threat Research - Cisco Blogs
S
Schneier on Security
D
Docker
Scott Helme
Scott Helme
MyScale Blog
MyScale Blog
Spread Privacy
Spread Privacy
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
GbyAI
GbyAI
有赞技术团队
有赞技术团队
Google DeepMind News
Google DeepMind News
The Hacker News
The Hacker News
H
Help Net Security
Simon Willison's Weblog
Simon Willison's Weblog
J
Java Code Geeks
C
Cyber Attacks, Cyber Crime and Cyber Security
T
Tenable Blog
B
Blog
Know Your Adversary
Know Your Adversary
IT之家
IT之家

博客园 - rangeliu

批判下微软的sql面试题 SQL Server 报表系统导出txt格式方法 Reporting Service报表纵向单元格合并 SSAS中命名集(SET)的使用 返回指定成员所有下级成员的MDX语句 MDX学习——初始MDX [收藏]Oracle 性能优化 十六進制的字符串轉換為double類型 [收藏]递归算出两个数字之间所有数字之和 [收藏]String与string的区别 [收藏]about协议的妙用 [收藏]中英文颜色对照表 [收藏]C# WinForm程序如何与JS交互 [收藏]在C#程序中使用系统热键 [转载]动态调用WebService(C#) [转载] .NET脏字过滤算法 [转载]使用Response.Filter过滤非法词汇 [转载]asp.net面试集合 [转载]WEB开发碰到的问题及经验十八则
[收藏]使用XML技術實現OWC對數據庫的展示
rangeliu · 2009-01-24 · via 博客园 - rangeliu

  本文档介绍了如何借助XML语言实现在Web页面上的OWC对数据库中的数据进行展示的方法。由于XML数据可以跨越防火墙,因此该方式可以实现在Internet上对数据进行展现。 
  在基于WEB的数据库分析应用中,常常借助OWC控件结合HTML实现对数据的表格和图表两种方式的展现。一般应用往往采用OWC直接连接数据库的方式,这会使数据库连接口令暴露在客户端,而使数据库的安全性降低。本文介绍的采用XML作为OWC和数据库之间数据交换介质的方式,能够避免这种对数据库造成的不安全危险。同时,这也能带来其他一些好处,例如:使浏览器与WEB服务器及数据库间的交互次数减少,从而加快排序等操作的响应速度,并减少了服务器的负荷。
一、获取XML数据
将数据库中的数据转化为XML格式的方法很多,本文档不过多对此进行介绍。从性能、通用性角度考虑,这里我们采用了ADO直接序列化(持久化Persist)数据的方式,代码如下:
  

Code


这种方式得到的的XML并不够简洁,其中包含了Schema信息。 
尽管对于OWC中的DataSourceControl控件来说,可以直接采用这种形式的XML数据,但考虑到数据从服务器向客户端传输的效率,我们使用XSLT对这种XML数据进行了转化。为此,编写了如下的Clean.xsl文件:

Clean.xsl


然后,在GetData.asp中通过如下代码对前面的XML数据进行转化: 

用XSLT清理转化XML数据

 
此时,就得到了我们想要的比较简洁的XML结构的字符串,可以简单地将其Response.Write到客户端:

HTML Code

二、使用OWC控件和HTML表格展现XML数据
2.1 基本功能的实现
这里新建了另外一个HTML页面。为了使用刚才得到的XML数据,在HTML页面中,采用XML 数据岛: 

<XML id="dbXML" src="getData.asp" onreadystatechange="init()"></XML>

 
然后,可以利用HTML表格的绑定功能展现数据: 

HTML Code

 
在刚才的XML数据岛的onreadystatechange事件对应的init()函数中,我们通过如下代码实现OWC的图表: 

Code

 
这样,我们就得到了数据表格和图表。
这样,借助于XML技术和IE绑定技术,我们就实现了OWC对数据库中数据的展示,而在客户端并没有暴露任何数据连接信息。
 
2.2 其他功能
OWC可以很容易的实现将所见到的图表保存为本地图片,大大方便了使用者。同时,OWC提供了多种图表类型,如:饼图、曲线图、柱形图等,适合在不同的情况下展现数据。  
如果借助COM组件、以及对XSL的灵活运用,我们这个页面能得到更好的性能和更强的功能。比如:对HTML表格的排序(参见附件中的HTML源代码)、数据分页等。此外,我们还可以实现通用的数据访问、搜索功能。

Code