首 页 用户登录 | ![]() |
|||
|
|||
按字母检索 | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z |
按声母检索 | A | B | C | D | E | F | G | H | J | K | L | M | N | O | P | Q | R | S | T | W | X | Y | Z | 数字 | 符号 |
|
![]() |
您的位置: 5VAR论文频道 → 论文中心 → 计算机论文 → 计算机理论 |
|
|||||
基于XML的三层C/S模型 | |||||
收集整理:佚名 来源:本站整理 时间:2009-01-10 12:08:34 点击数:[] ![]() |
|||||
书资料管理为例,它是基于XML表达、传输与处理的,其详细实现如下: 3.1 获取数据生成XML文档 中间层通过XML获取数据源数据,生成XML文档,其中每一的书目信息包括:书名、作者、图书简介、出版日期。下面所列的就是获取数据源的一段典型例程。 <%@ LANGUAGE=VBScript %> <? XML VERSION="1.0" encoding="GB2312" ?> <图书资料管理> <%Set Connection=Server.CreateObject("ADODB.Connection") Connection.Open Set ItemRecordset =Connection.Execute("select * from item ") Do while Not ItemRecordset.EOF%>` <书目> <书名><%= ItemRecordset("书名") %></书名> <作者><%= ItemRecordset("作者") %></作者> <图书简介><%= ItemRecordset("图书简介") %></图书简介> <出版日期><%= ItemRecordset("出版日期") %></出版日期> </书目> <%ItemRecordset.MoveNext Loop%> </图书资料管理> 3.2 XML文档通过HTTP从应用服务器传送到客户机层,并且支持XML更新功能,使得中间层或数据服务器上数据的变化可以传递给客户。 3.3 XML数据的在表示层(客户机层)的表达 发送到客户端的数据(图书资料管理数据),可以根据用户对象及其不同的应用要求有不同的显示形式。如下所示的XSL样式表,就是一个显示示例,将生成一个HTML文档,包括一个表格,其中的一行就为一个"书目"元素。 <xsl:template match="/"> <HTML> <HEAD> <TITLE>图书资料管理</TITLE> </HEAD> <BODY> <TABLE> <xsl:for-each select="图书资料管理"> <TR> <xsl:for-each select="书目"> <TD> <xsl:process-children/> </TD> </xsl:for-each> </TR> </xsl:for-each> </TABLE> </BODY> </HTML> </xsl:template> 3.4 编辑、处理数据的实现 只要理解了中间层XML文档的数据,就能从任何地方处理和编辑数据(图书资料管理数据)。 如下例所示,LoadDocument程序打开XML文档,然后调用另一个程序DisplayNode,它用来显示文档的结构。LoadDocument传递给正在打开的XML文档的ChildNodes属性一个引用作为它的参数,同时传递一个整数用来标示开始显示的层次级别。代码利用参数来格式化在Visual Basic文档结构显示窗口中的文本。 DisplayNode属性的函数会遍历文档寻找需要的NODE_TEXT节点类型串,一旦代码找到一个NODE_TEXT的节点,它会利用NodeValue属性来获得相应的文本串。另外,当前节点的ParentNode属性指向一个元素类型的节点。元素节点实现了一个NodeName属性, Public Sub LoadDocument() Dim xDoc As MSXML.DOMDocument Set xDoc = New MSXML.DOMDocument xDoc.validateOnParse = False If xDoc.Load("C:/My Documents/sample.xml") Then DisplayNode xDoc.childNodes, 0 Else ' The document failed to load. End If End Sub Public Sub DisplayNode(ByRef Nodes As MSXML.IXMLDOMNodeList, _ ByVal Indent As Integer) Dim xNode As MSXML.IXMLDOMNode Indent = Indent + 2 For Each xNode In Nodes If xNode.nodeType = NODE_TEXT Then Debug.Print Space$(Indent) & xNode.parentNode.nodeName & _ ":" & xNode.nodeValue End If If xNode.hasChildNodes Then DisplayNode xNode.childNodes, Indent End If Next xNode End Sub 4.总结 在基于XML的三层C/S模型中,中间层一次性从远程数据库中获取满足客户需求的信息,生成相应的XML文档,以后中间层就不需要再与远程数据库进行交互了,即与远程数据库的连接也就终止了。一旦中间件软件把满足客户需要的信息组装起来以后,就可以以XML 形式发送给客户了,这样客户与中间层也就无需进一步交互。 同时,丰富的XML数据发送给客户端后,客户应用和脚本语言就可以直接使用这些数据,这时客户端与中间层服务器之间连接就可以中止了。 因此,在C/S模型中发送给中间层的信息是简洁的、个人化的和精确的。应用服务器负责在正确的时候组装并交付正确的信息,这将网络上的流量减小并提供了高度的交互能力和用户的满意程度。而且,由于中间层可以提供动态的、易访问的内容,这些内容可以被客户方操作。而且,无需刷新整个用户界面就可以更新页面的内容,这样就减少了从服务器方获取客户方已有的信息所需的交互时间。用户可以方便的远程管理数据,使得网络成为一种具有更大的交互性和互操作性的媒体。 其次,运用基于XML的三层C/S模型,XML结构化的数据可以从商业规范和表现形式中分离出来,而且可以更详细地定义某个数据对象的数据结构,解决了信息标准化的问题。 通过在三层C/S模型使用XML,使得企业之间可以通过网络,与合作伙伴间,进行跨平台,跨操作系统的信息交换。 参考文献 [1] Hiroshi Maruyama ,Kent Tamura , Naohiko Uramoto .XML and Java Developing Web Applications[M]. Addison-Wesley, August 1999. [2] Ed Tittel, Norbert Mikula , Ramesh Chandak . XML For DUMMIES [M]. IDG BOOKS Worldwide , [3] 宋晓梁,刘东生,许满武. 中间件及其在三层客户机/服务器模型中的应用[N] . 计算机应用990713 Tags: |
提供人:佚名 | |
【返回上一页】【打 印】【关闭窗口】 |
![]() |
5VAR论文频道 |
![]() |
5VAR论文频道 |
![]() |
关于本站 -
网站帮助 -
广告合作 -
下载声明 -
网站地图
Copyright © 2006-2033 5Var.Com. All Rights Reserved . |