欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOC文档下载  

    毕业设计(论文)ASP.NET数据结构知识竞答系统的设计与实现.doc

    • 资源ID:3976293       资源大小:215KB        全文页数:26页
    • 资源格式: DOC        下载积分:8金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要8金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    毕业设计(论文)ASP.NET数据结构知识竞答系统的设计与实现.doc

    数据结构知识竞答系统的设计与实现摘 要:信息技术的发展对现代远程教育的开展起到了积极的促进作用,本文结合数据结构这门课程,利用ASPNET技术和SQL Server开发了一个完全基于数据库的知识竞答系统,具有很强的交互性和可维护性。关键字:数据库;ASP.NETAbstract: The development of information technology on the development of modern distance education has played a positive role in promoting, the paper of "data structure," this course, the use of ASP. NET technology and the development of a SQL Server database Zhishijingda based entirely on the system, are highly interactive and maintainability. Keyword: database; ASP.NET第一章 引言(或绪论)20世纪80年代Internet的诞生,在信息技术领域成为一个新的起点,也是一次深远的革命。信息技术不仅使每个人受益,同时从这一刻开始,它真正使得整个社会作为一个整体从信息技术中获益,工业化社会从此开始了向信息化社会的过渡。目前,工nternet连接着数百万个网络,数十亿台计算机,而且这些数字每天都在改写。在我国,虽然20世纪90年代初才开始互联网的发展,但发展速度却异常迅猛,我们已看到各行业因互联网的发展而产生的变革。更丰富的资源、更方便迅速的通信方式、更为快捷的信息查询途径都无所不在的改变着我们人类。现在电子商业、网上购物、学习、求医己不再是天方夜谭,数据库、查询技术和可视化技术的发展使我们能够更为迅速便捷的获得更多的信息资源。知识的学习是其中非常重要的一环,特别是在网络飞速发展的今天,人们除了渴望能够通过Internet迅速、方便地获得尽可能多的信息资源以外,还希望能够将这些信息资源融合到自己的应用程序中去、能够与其他应用程序方便地交换信息。信息查询系统同其他计算机应用软件一样,正朝着跨平台、跨语言、可重用、安全性等方向在不断发展。如今出现了一项新的技术Web服务技术,它的出现使信息查询系统的开发达到了一个新的高度。应用Web服务技术,使得计算机系统之间能够真正摒弃平台差异和实现差异,依靠预先达成一致的Web服务规范,完成无缝的系统对话。只有实现了低实现代价的、广泛的无缝互联与会话,Internet所带来的系统联系的极大便利性才能真正转化为应用承诺的生产力的极大提升。随着Web服务技术的广泛应用,各个技术提供商将得以专注于自身技术的发展,而将与其他技术供应商的互操作问题转移给Web服务技术,这将为各个技术提供商节省相当大的研发成本。同时,Web服务的发展将有力地推动应用开发模式的变迁,当代应用需要摆脱独立解决方案的实现模式,需要舍弃复杂系统连接的实现方法。一个有效的应用绝对不应该仅仅基于程序员以及那些复杂的代码。对于当代企业应用,尤其是B2B电子商务应用而言,传统的由程序员主导的由里向外的开发模式应当被由用户主导的由外向里的开发模式取代,冗长的、串行的开发循环应当被即时的、快速的应用装配所取代;同时,这样的应用应当天生就具备高可定制性。如果探究其商业本质,这是来自经过时间考验的商业技术概念、“即时制造”以及“规模可伸缩”等概念,我们需要做的就是将传统的商业概念延伸到电子商务中去。Web服务不但能够改变现有的技术,现有的商业应用效率;同时,Web服务这个崭新的模式,就如同PC和Internet的出现那样,将创造出许多崭新的商业模式。如今软件开发的主流企业无一不在关注和推动Web服务的发展,从Microsoft的.NET架构,到Sun的Java One,又或是IBM的WebService'Technology,无一不体现了这些重量级的技术提供者对Web服务的推崇和重视。同时其他的厂商、企业也在积极地升级自己的产品以支持Web服务或是提供自己的Web服务。2002年7月左右,Amazon发布了一套可以通过两个接口(XMI了I-I'1'TI)以及XML/SOAP)访问的Web Servicesa通过这套Web Services,用户可以使用程序获取Amazo。所提供的各种商品的结构化数据,包括产品名称、制造商、价格等等。具体的获取方式包括关键词搜索以及内容树浏览。同时,Googl e将它自己的搜索服务包装成了Web服务。目前这个工具包支持ava和.N cr两种技术,使用范围被限制在非商业领域。2002年8月6日,Borland公司正式发布了Delphi 7,在Delphi 7中,Delphi突出模型驱动的体系结构和对.N ET平台的支持,同时在网络应用、基于SOAP/XML的Web服务以及界面开发、报表应用开发、与系统分析和设计过程的集成方面,都做了很大改进。在国内,对Web服务的研究和应用也在蓬勃的展开。象在微软亚洲软件开发大赛上一举夺魁的由我国北京航天航空大学设计的myTravel. net就是一套基于Web服务技术的个人旅游整体解决方案。包括十多个Web Service,一个Web Application和几个辅助功能的组件。然而在国内到目前为止还没有出现很成熟的Web服务产品。因此更有待于我们尽快地去学习、理解和应用,将它的强大功能同实际联系起来,发挥它的作用。1.1 开发工具Microsoft Visual Studio.Net 的简介C#的目标是提供一种用于.NET开发的简单、安全、现代、面向对象、以Internet为中心的高性能语言。C#是一种全新的语言,它汲取了过去三十年中计算机科学发展所积累的诸多教训。 .NET平台本质上是一个新的开发框架,为传统Windows操作系统(尤其是windows 2000)API和服务提供全新的编程接口,它同时还将Microsoft在90年代晚期开发的各种技术融合起来。这些技术包括COM+组件服务、ASP Web开发框架、对XML和面向对象设计的全面支持、对新的Web服务协议(如SOAP,WSDLHE UDDL)的支持,现在以Internet为中心,都集成在原来的DNA体系中。这一平台包括了四个不同的产品群:l 一组语言,包括C#、VB.NET、C+、J#;一套开发工具,包括Visual Studio.NET;一个创建Web服务、Web程序和Windows程序的综合类库;以及内置与框架中执行对象的运行期环境CLR(Common Language Runtime,公用语言运行期)。l 一组.NET企业级服务器,即原先称为SQL Server 2000,Exchange 2000,Biztalk 2000等服务器产品,提供了关系型数据存储、电子邮件和B2B商务等各种专门功能。l 一组商用Web服务,即Hailstorm计划,开发者在付费后可以使用这些服务,开发需要用户身份信息的程序。l 新的应用.NET的非PC设备、从手机到游戏机。l Microsoft.NET采用最新的数据库访问技术ADO.NET。对数据库的连接采用了ADO.NET方式:ASP.NET是通过ADO.NET来访问数据库的。ADO.NET是ADO的改进版本。在ADO.NET中,通过.NET Data Priovider所提供的应用程序编程接口(API),可以轻松地访问各种数据源的数据。ADO.NET的两大组件是.NET Data Provider和DataSet。.NET Data Provider .NET Data Provider用于连接数据源、执行命令并返回结果。.NET Framework包括两种数据提供者,即SQL Server Data Provider和OLE DB.NET Data Provider。Sql Data Provider位于名字空间System.Data.SqlClient中,它用于访问Microsoft Sql Server 7.0 及以后版本的数据库。OLE DB.NET Data Provider 位于名字空间System.Data.OleDb中,它用于访问OLE DB数据源。 .NET Data Provider有4个核心对象。其中,Connection对象用于与数据源建立连接。Command对象用于对数据源执行指定的命令;DataReader对象用于从数据源返回一个仅向前的(forward-only)只读数据源;DataAdapter对象用语从数据源获取数据,填充各种操作变换到数据源相应的SQL语句。.NET Data Provider的核心对象对象SQL Server.NET Data ProviderOLE DB.NET Data ProviderConnectionSqlConnectionOleDbConnectionCommandSqlCommandOleDbCommandDataReaderSqlDataReaderOleDbDataReaderDataAdapterSqlDataAdapterOleDbAdapterDataSet ADO.NET的核心组件是DataSet。可以将DataSet想象成内存中的数据库,它是不依赖于数据库的独立数据集,这里的独立是指即使断开数据连接或关闭数据连接,DataSet依然是可用的。在ADO.NET中,DataSet是专门用来处理从数据源获得的数据,而且不管底层的数据。DataSet内部是用XML来描述数据的。XML是一种与平台无关、数据无关且能描述复杂数据的数据描述描述语言。 DataSet支持多表、表间关系、数据约束等。DataSet里的表是用DataTable表示的。在DataSet里,可以包括多个DataTable,这些DataTable构成DataTableCollection对象。每个Data Table表示内存中的一个表,它包含一个DataColumnCollection 对象,该对象表示表的各个列。DataTable还包含一个DataRowCollection对象,该对象表示表的各个行。DataTable保存有数据的状态。通过存取DataTable的状态可以知道数据是否被更新或被删除。 各个DataTable之间的关系是通过DataRelation来表达,这些DataRelation形成了一个集合,称为DataRelationCollection.DataRelation表示表之间的主键-外键关系。当两个有这种关系的表中的某一个表的记录指针移动时,另一个表的记录指针也将随之移动。同时,一个有外键的表的记录更新时,如果不满足主键-外键约束,则更新就会失败。 DataSet有一个ExtendedProperties属性,该属性是一个PropertyCollectiond对象。通过PropertyCollection对象,可以自定义特定的信息,如密码和更新时间等。 Connection对象 在ADO.NET中,Connection对象用于连接数据库,如连接Sql Server 7.0及以后版本的数据库,用SQL Server.NET Data Provider的SqlConnection对象。如果在连接OLE DB数据源或连接Microsoft SQL Server 6.5及更早版本的数据库,用OLE DB Data Provider的OleDbConnection对象。Command对象 建立数据连接后,可以用Command对象来执行命令并从数据源返回结果。Command对象可用Command构造函数来创建,也可用Connection对象的CreateCommand()方法来创建。用构造函数创建时,必须指定要执行的SQL语句和Connection对象。例如:SqlCommand cm=new Sqlcommand(“select * from Customers”,cn);l ExecuteReader()方法ExecuteReader()方法返回一个DataReader对象。DataReader对象是一个仅向前的只读流。l ExecuteScalar()ExecuteScalar()方法返回单个值 ,如合计、总行数等等。l ExecuteNonQuery()ExecuteNonQuery()方法用于执行不需要返回结果的命令,如插入。删除和更新等DataReader对象 DataReader对象用于从数据库中获得仅向前的(forward-only)只读数据流。由于在内存中一次只存放一行数据,因此使用DataReader对象可提高应用程序的性能,大幅度减轻对内存的需求。DataReader对象是通过调用Command对象的ExecuteReader()方法创建的。l Read()方法Read()方法用于从查询结果中获得一行数据。获得一行数据后,可以通过字段名来获得每一列的值,或者调用Get()方法(如GetDataTime()、GetDouble()、GetDeciaml()、GetInt32()和GetString()等)来获得列的值。l NextResult()方法有些数据提供者允许在一个查询声明中包含多条命令(如SQL语句或存储过程),以便产生多个结果集。对于多个结果集,可以调用DataReader对象的NextResult()方法获得下一个结果集。参数查询 如果要创建一个使用多次但每次使用不同的值查询时,那么应该在查询中使用参数,即创建参数查询。参数是查询时所提供值的占位符,它在SQL语句中用好加标识符(对于SQL Server .NET Data Provider)或?(对于OLE DB.NET Data Provider)表示。例如:select * from customers where custname=custnameCommand对象包括一个Parameters属性,它是所有参数的集合。可以使用Parameters的Add()方法来建立参数。Add()方法的第一个参数是参数的名称,第二个参数是参数的类型,第三个参数是参数的长度DataAdapter对象 DataAdapter对象用于从数据源中获取数据、填充DataSet中的表和约束并将对DataSet的更改提交回数据源。DataAdapter对象的SelectedCommand、InsertCommand、UpdateCommand和DeleteCommand属性都是Command对象。其中,SelectCommand用于从数据源中获取数据,而InsertCommand、UpdateCommand和DeleteCommand用于更新数据源中的数据。 DataAdapter对象的Fill()方法用于填充DataSet中的表,它的第一个参数是要被填充的DataSet,第二个参数是用SelectCommand返回行填充的DataTable。如果DataTable不存在那么Fill()方法在DataSet中创建一个新的DataTable。Microsoft.NET不仅支持语言无关性,而且支持语言集成性。这意味着可以跨越不同语言继承类、捕捉异常并应用多态性。. NET框架通过所有.NET组件都需要遵守的类型规范CTS(Common Type System,公用类型系统)。CTS支持各种通用的概念,包括类、接口、代表、引用类型和值类型。而且.NET还引入了CLS(Common Language Specification,公用语言规范),提供了语言集成必需的一系列基本规则。CLS规定了成为.NET语言的最低要求。符合CLS的编译器都可以生成彼此能相互操作的对象。整个FCL(Framework Class Library,框架类库)可以被符合CLS的任何语言使用。在.NET中,程序并不编译为可执行文件,而是编译成Microsoft IL(Microsoft Intermediate language, Microsoft中间语言)文件,然后由CLR去执行。C#生成的Microsoft IL文件与其它.NET语言完全相同。平台不会区分语言。CLR的关键就在于,它是公用的。用C#可编写什么样的应用程序:l Windows 应用程序:这些应用程序如Microsoft Office,有我们熟悉的Windows外观和操作方式,使用.NET Framework的Windows Form模块就可以生成这种应用程序。Windows Form模块是一个控件库(如按钮、工具栏、菜单等)库,其中的控件可以用于建立Windows用户界面(UI)。l Web 应用程序:这些是Web也,可以通过任何Web浏览器。.NET Framework包括一个动态生成Web内容的强大系统,允许个性化、实现安全性等。这个系统叫做Active Server Page.NET(ASP.NET),我们可以使用C#通过Web Forms创建ASP.NET应用程序。l Web 服务:这是创建各种分布式应用程序的新方式,使用Web服务可以通过Internet虚拟交换数据。无论使用任何语言创建Web服务,也无论Web服务驻留在什么系统上,都使用一样简单的语法。这些类型也需要某种形式的数据库访问,这可以通过.NET Framework的Active Data Objects.NET(ADO.NET)部分来实现。也可以使用许多其他资源,例如创建连网组件、输出图形、执行复杂数学任务的工具等1.2数据库管理系统Microsoft SQL Server的简介 使用SQL Server 2000的最新增强功能开发数据库解决方案。建立在SQL Server 7.0可扩展基础上的SQL Server 2000代表着下一代Microsoft .NET Enterprise Servers(企业服务器)数据库的发展趋势。SQL Server 2000是为创建可伸缩电子商务、在线商务和数据仓储解决方案而设计的真正意义上的关系型数据库管理与分析系统。数据仓储随着SQL Server 7.0联机分析处理(OLAP)服务的引入,Microsoft已成为商务智能解决方案领域的先驱。企业需要对来源各异的数据信息进行集成、合并与汇总摘要。而数据仓库则通过使用大型、集中的数据存储来提供上述功能,在这种数据存储中,信息被收集、组织,并可供决策者随时调用。于是,决策者便可洞悉详情,探究规律与趋势,优化商务决策,并预测未来的行动。 Microsoft针对包括集成数据挖掘、OLAP服务、安全性服务及通过Internet对多维数据集进行访问和链接等在内的分析服务提供了新的数据仓储功能。电子商务 电子商务解决方案对数据库应用程序提出了更高要求。由于来自世界各地的用户以全天不间断的方式对电子商务网站进行访问,因此,就必须确保由此产生的繁重事务性负载得到高效处理。而编程方面的灵活性对确保与现有系统间的协同工作能力和电子商务所需的可靠性而言亦可谓至关重要。除了提供电子商务所需的可伸缩性与可扩展性之外,SQL Server 2000还提供了丰富的数据库编程能力-基于Web标准-以确保系统的协同工作和灵活性。与此相关,SQL Server 2000还将丰富的扩展标记语言(XML)、Worldwide Web Consortium(万维网社团,W3C)标准支持、利用Transact SQL(T-SQL)实现的XML数据操作能力、灵活而强大的Web分析功能以及使用Hypertext Transfer Protocol(超文本传输协议,HTTP)进行的安全Web数据访问等新特性包含在内。 在线商务 SQL Server已成为颇受众多客户关系管理(CRM)应用程序、商务智能(BI)应用程序、企业资源计划(ERP)应用程序及其它在线商务应用程序厂商和客户所青睐的数据产品,而这则主要应归功于该产品在对称多处理(SMP)硬件方面所具有的可伸缩性和较低的数据库维护需求。通过使用SQL Server 2000 Server,将使你获得增强的可靠性、可伸缩性和简化的管理与优化功能,而这些则恰恰是成功快速部署在线商务应用程序所必须的。SQL Server 2000不仅支持集中化数据库管理功能,而且还最大程度地实现了管理与优化工作的自动化,从而,减轻了有关管理人员的负担。第二章 信息查询系统的发展2. 1信息查询系统的发展信息和能源、物质一样,是社会经济发展的一项重要资源。数据是记录在某种介质上可以鉴别的一串符号,是对客观对象的一种表示形式,是可以通过人工或自动化手段予以收集和处理的事实、观念和指令的描述形式;信息、就是对数据经过解释或处理之后,对人们的行为产生影响并赋予一定意义的数据。信息处理包括了从获取数据将它们转变为信息、,进行适当加工,再间信息接受者提供信息的全过程。广义的信息处理大体包括:信息的采集、存储、处理、传输、检索和控制等。自从1951年美国通用电器公司首次应用计算机进行公司的管理开始,至今为止应用计算机从事信息管理己成为计算机应用领域的重要方面。目前,计算机在信息竹理中的应用正从单项事务处理转向系统应用,从辅助一般管理转向辅助经济管理决策,从局部管理转向全球管理,并实现了计算机的集成应用。信息查询系统是企业信息发布中非常重要的一环。在信息系统的数据库中存储着大量的技术、经济、生产、人事、设备和市场等信息,要从中快速方便的查到所需要的信息、,是信息查询系统的基础。现在随着Tnternet的发展,人们已经将查一询的范围扩展得越来越广,也越来越希望及时获得最大范围内的信息。信息查询系统经历了一个不断发展的过程,到如今,LIa于Internet的普及和流行,它已同Internet及Web不可分离地联系在了一起。2.1.1单机上的信息查询系统在计算机时代的早期,查询系统均属于单机上的、零散的、孤立的系统。无论是用户界面、查询程序和数据库系统都在同一台机器中。在查询程序的用户界面中,用户输入要查询的条件,程序在数据库中按顺序进行检索,找出符合条件的结果,将结果返回给用户。这种方法很简单易用,也比手工做同样的工作快得多。但随着时间推移,由于人们输入的信息越来越多,电子表格越来越庞大,结果,用户的要求开始有所转变了。2.1.2 C/S模式的信息查询系统PC机快速普及,多媒体技术迅猛发展,信启、量越来越大,然而用户仍希望使用查询系统来查询数据,使用管理软件来分析信息,但他们不再愿意手工输入所有的信息。为什么不能直接从大型机获得信息并生成基于最新数据的分析结果呢?为们1么一份结果不能立即被组织中的其他用户共享,使他们能无须重新输入任何信息就能根据这些数据再加工呢?人们希望他们桌上的计算机能成为全世界的入口,希望通过许多信息源迅速而方面的掌握数据。为了这些要求的满足和发展,C/S模式的信息查询系统应运而生。在C/S模式的信息查询系统中,查询程序被分成两部分客户端应用程序和服务器端应用程序。存储了大量重要数据的数据库被放置在J性能稳定的服务器上,客户机上也有一定量的数据。用户在客户端程序中提l七查询请求,接着请求被客户端程序发送到服务器端;服务器端的程序根据收到的请求信息,在数据库中进行查找,并将符合条件的结果返回客户端程序;最后客户端程序将结果显示在输出设备上,供用户查阅。ClS查询模式如图2. 1所示:图2. 1 C/S杏询系统模式通过这种方式,节省了信息资源,多个用户可以共享一台服务器上的数据。但随着使用的深入,人们发现在C/S模式的信息、查询系统中,需要在所有使用该系统的机器上安装并配置客户端程序,这比较复杂并难于维护,而且当需要升级时,必须对每台客户机进行改变;同时操作系统和安装在客户机上的其他软件的版本变化,DLL都会频繁地与客户端程序发生冲突。2.1.3 B/5模式的信息查询系统随着计算机的广泛应用和网络技术的飞速发展,很多企业都组建了企业内部网Intranet。这些内部网一般采用TCP/ IP作为通信协议,将客户端、数据服务器、Web服务器分开以Browser/ Server模式运行,这是查询系统由传统的模式向网络应用模式的转化。对内,客户端通过网络来访问Web服务器,以实现企业内部信息的共享。对外,设立防火墙将内部网和外部网隔离开来,避免一些重要的内部信息外泄及外部危险信息的渗入。所谓Browser/Server模式,事实上是客户端/服务器端模式的一种延伸。客户端只需安装浏览器,如IE或Navigator,即可访问相关资源,减轻了以往客户端程序的开发及安装、配置;而作为数据服务器主要是用来存储各种数据;至于Web服务器则用来向客户端提供访问界面,并通过该界面实现对数据的访问。这样各部分分工明确,维护起来方便简单。当数据库中的数据发生变化时,客户端的环境无须做任何改动即可实现数据的更新,同时也隔断了客户端与数据库的直接联系,增强了数据的安全性。编程人员只需集中精力进行网络编程,有利于系统的维护。具体访问过程如图2. 2所示:图2. 2 13/S查询系统杖式Web在不断发展,1Veb应用的复杂度在不断提高,由Web Server和DatabaseServer组成的两层模式已经无法满足大用户量下的复杂应用的要求了。为了提高系统的吞吐率和应用的实现效率,系统架构师们在以上两层模式的基础上,设计了三层模式。Web Server, Application Server和Database Server组成的三层架构有效地解决了原有的两层架构在面对复杂Web应用是时的力不从心。三层架构就是在Web Server不Database Server中加入逻辑层ApplicationServer,专门用于事务的处理过程。随后,三层架构又被拓展到了N层架构,将逻辑层进行了进一步细分。2. 2信息查询系统同Web服务技术的结合如今基于Web应用的信息、查询系统己经发展到了极其快速、便捷的地步。用各种语言编写、技术实现的信息查询系统每天都在网络上发挥着巨大的作用,方便着人们的工作、学习和生活。那么现在还有哪些问题有待解决,那些方面有待发展,未来又将朝着什么方向前进呢?首先,Web应用的不断发展虽然方便了我们的许多方面,但人们发现在Web应用和传统桌面应用(比如企业内部管理系统、办公自动化系统等)之间存在着连接的鸿沟,人们不得不重复地将数据从Web应用迁移到传统桌面,从传统桌面应用将数据迁移到Web应用,这成为了一个巨大的障碍。计算机的应用是要满足自动化,在自动化流程之间的人工流程会在不同程度上降低人们的积极性。其次,目前大多数基于、9eb的商务服务在处理购买者、供应商、交易市场和服务提供者之间的联系方式上各有不同。如何将这些应用方便且低代价地连接在一起,从而实现大范围的跨实体的系统对接,是摆在开发人员面前的一大问题。不同的应用开发语言不同、部署平台不同、通信一协议有可能不同,对外交换的数据格式也有着很大的差异。如何解决语言差异、平台差异、协议差异、数据差异所带来的高代价的系统集成,是问题的关键。最后,现今基于Web应用的信息查询程序通常是人机交互的,结果多用于浏览,往往难于实现Web程序的重用和扩展。将面向对象的组件技术引入到Web中,充分利用工nternet的开放性,节约编程资源是我们追求的发展方向。近期出现的Web服务技术(Web Services Technology)正是对这些问题的最佳解决方案。Web服务技术是一种基于标准的Web协议的可编程组件,它的主要目标就是在现有的各种异种平台的基础上构筑一个通用的平台无关、语言无关的技术层,各种不同平台之上的应用依靠这个技术层来实施彼此的连接和集成。如图2. 3所示,Web服务可以被自由地部署在工nternet上,而服务器、PC或是移动计算设备上的各种程序,包括Web, Windows应用程序或是其他支持Web服务的任何类型的程序都可以在任何时候、任何地方通过工nternet对其进行方便的调用,同样调用它的也可以是另一个Web服务。图2. 3 Web服务的作用由上可以看出,使用Web服务技术构造的信息查询系统不但能够完成以往网络信息查询系统的一般查询功能,还具有新的优势和功能:首先,各种类型的应用程序可以在任何时候、任何地点通过工nternet对其进行方便的调用,使资源得到最大的利用,充分发挥了工nternet的开放性。以股票查询系统为例,只要证券中心将股票查询系统开发为Web服务,那么需要此功能的其他单位或个人在获得证券中心的许可之后,就可以直接通过Internet进行调用,并对结果进行处理。其次,使用Web服务技术的信息查询系统能够与其他应用程序方便地集成在一起。例如新开发了商品查询系统,现在利用Web服务技术,就可以简单地将它同已有的商品买卖系统进行集成。这样最大限度地利用了已有资源,减少了重新编写代码的工作。再次,由于Web服务技术使用的是通用的语言、传输协议、标准等,所以基于它开发的信息查询系统,可以被异构平台上以异种语言编写的程序进行调用,真正实现了跨平台、跨语言特性。因此在信息查询系统中融入Web服务技术代表了未来信息查询系统的发展方向,应用它可以使信息查询系统达到从未有过的开放性、通用性、可重用性和可扩展性。第三章 需求分析和系统设计3.1系统需求分析3.2系统实现为了实现远程系统的资源共享,系统结合WebServices和.NET Remoting技术,实现学校内部和学校之间的分布式数据库查询,结合ADO.NET解决数据库一致性问题。WebServices和.NET Remoting技术都是非常强大的,但是这两种技术各自有各自的特点,它们适合不同的场合应用。WebServices适合在互操作能力强、Internet、不同的平台(Linux、Unix、Windows)之间进行数据库查询等场合。而对于内部网、平台安装有.NET组件的、数据库查询的性能特别关键的场合,.NETRemoting是更理想的选择。本文系统结合两种技术,通过.NETRemoting进行分布式数据库查询,采用Web Services实现,如图3.1所示。用户调用层、业务逻辑层、数据处理层、远程数据调用接口和数据库。数据库为各个远程教学系统中的数据库,可以是SQLServer、DB2,也可以是Oracle、MySQL。远程数据调用接口为数据的调用部分,在内部,需要快速数据获取,采用Remoting技术实现。在学校之间利用WebServices技术实现数据的调用。上面一层为数据处理层,数据处理层负责将多个数据库来源的数据进行有效的整合。数据处理层上面是业务层,业务层负责根据用户的需求,进行分析,分析数据的调用逻辑。上面一层是用户调用层,用户可以通过WebServices的客户端或者IE进行调用,也可以通过Remoting的客户端调用。调用流程为:用户(内部用户和外部用户)将数据查询的请求通过客户端的调用或者Web Services服务提交给业务逻辑层。业务逻辑层根据用户提交的需求,进行相关的分析,将分析结果传给下层的数据处理层,如需要查询哪个数据库的哪张表,数据处理层透明的进行数据处理后,将结果返回给业务层,业务层将数据传输给用户。数据处理层根据业务逻辑层传递下来的处理逻辑,从各个不同地点的数据库系统之上的Web Services服务和Remoting远程对象进行查询。然后进行整合处理,然后将最后的结果传回客户端。3.2.1 Web Services的实现Web Services通过WSDL(web services description language)来描述和定义应用程序,通过SOAP(simple object access proto-col)进行访问,在注册中心UDDI(universal description discoveryand integration)发布,从而应用程序可以搜索并定位到该服务。Web Services的构架包括3个清晰的角色定义,如图3.2所示。 图2 Web Services系统架构Microsoft.NET的Web Service技术为实现分布式数据库的访问提供了强有力的支持。由于Web Services的所有协议都基于标准的Web协议。客户端可以通过Internet调用WebSer-vices,获得和发送基于XML的串行格式数据。这样,即使各数据库在地理上分布地很广,对于位于不同地点的不同数据库系统之上的WebService,其客户端仍然可以穿越防火墙,通过Internet得到相同格式的数据。由于各个学校在地理上是分布的,而且系统之间存在着差异性,且均采用了防火墙对其进行了相应的数据保护措施,采用Web Services技术,则是最合适的选择。系统在各分布的数据库之上架构了WebServices服务,如图3.3所示。各个学校现存的各个系统提供相应的WebServices服务,各个学校根据自身的逻辑与数据库处理方式,开发与部署Web Services。数据处理层根据用户提交的请求,调用单个或多个远程的Web Services服务,如图所示,获得远程数据库中的数据。3.2.2基于.NET Remoting的实现.NET框架的远程处理技术是Visual Studio.NET提供的构建分布式应用的一种编程模型,是DCOM的改进和替代版本。该技术简化并系统化了创建分布式应用程序的方法,支持HTTP、SOAP及XML标准,支持进程间协同工作。从而为分布式数据访问提供了一个良好的模型。远程处理过程如图3.4所示。图3.4远程处理过程服务器端创建一个服务器类实例,远程处理系统创建一个表示该类的代理对象,并向客户端对象返回一个对该代理的引用。当客户端调用方法时,远程处理代理检查类型信息,并通过信道将该调用发送到服务器进程。侦听信道获得该请求并将其转发给服务器远程处理系统,服务器远程处理系统查找(或在必要时创建)并调用被请求的对象。然后,此过程将反向进行,服务器远程处理系统将响应捆绑成消息并由服务器信道发送到客户端信道。最后,客户端远程处理系统通过代理将调用的结果返回给客户端对象。客户端通过.NET Remoting,以TCP通道进行访问服务端对象。这种方式不但可以以服务的方式来发布服务器对象。而且实现客户端和服务器端对象的松散耦合,同时也优化了通信的性能。对学校内部各个院校、各个部门、各个系之间的数据查询需要较高的性能,利用.NET Remoting可以更有效的提供数据库查询。如图3.5所示,客户端根据用户的查询需求,对查询SQL进行解析,解析后通过透明代理向各个远程对象发送命令。远程对象调用其通过ADO.NET接口访问数据库,生成数据库的一份拷贝缓存到数据集中,服务器端维护该对象中数据集的状态,根据用户的请求向客户端返回数据。客户端将返回的结果集进行合并,显示给用户。图5基于.NET Remoting技术的分布式 数据库查询实现过程

    注意事项

    本文(毕业设计(论文)ASP.NET数据结构知识竞答系统的设计与实现.doc)为本站会员(文库蛋蛋多)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开