计算机计费管理平台的设计与实现.pdf
I 计算机计费系统管理平台的设计与实现 摘 要 随着学校规模的不断扩大和高校合并的陆续进行,许多学校面临着校区跨地域的问题,不同校区设立自己的教学机房,采用集中式数据库技术的机房计费管理模式已不能适应这种多个分散机房的管理需求,机房计费管理系统应该是一种基于分布式结构的管理模式。本课题主要对基于.NET平台下的分布式数据库应用进行研究,采用A语言和 C#语言,SQLServer2005数据库技术,从提高方便性和数据安全性的角度出发,设计与实现了一个基于分布式的机房计费系统。力求系统功能较为完善,具有较好的扩展性和可移植性,系统界面友好,使用方便。可以极大地方便学生上机学习,大量减少机房管理人员管理机房的时间,以提高机房的利用率和管理人员的工作效率,实现机房规范化、科学化和开放式的管理。本文首先叙述了课题的研究背景、研究内容及目标;接着对系统用到的相关理论与技术基础进行了概述;然后进行了系统的需求分析,其中包括数据库方案的分析,用户角色和权限分析等;其次重点描述了系统的设计,包括系统的软件体系结构设计、系统功能模块的设计、数据库的设计;随后描述了系统的实现,重点描述了区域管理模块、客户端登录模块、网络集中管理模块,数据集成的实现,并给出了关键代码和运行效果;最后对课题进行了总结,对课题的后续研究方向进行了展望。关键字:Web 服务器;数据库服务器;计费管理系统;SQL Server 2005 II The computer lab-based accounting management for system design and implementation Abstract As a result of the expanding of schools and the merging of Colleges,many schools are faced with the problem of cross-boundary school,and many schools set up campuses in different rooms of their teaching.Then,using the centralized database engine room of the management of the engine room,engine room billing management system should be a structure based on distributed management model.The topics mainly based on.NET platform,a distributed database application research,using A and C+language,SQL Server2005 database technology,from the point of improved convenience and data security,the design and implementation are based on Distributed room billing system.To seek a more perfect system,which has good scalability and portability,is user-friendly and easy to use can make it easier for the students to learn,can save the time of the administrators in the computer room,can improve the engine room staff efficiency,can achieve standardized room,scientific and open-end management.First,this paper describes the study subject background information and objectives of the study;Then,the system needs analysis,including the analysis of the database program,user roles and permissions analysis;whats more,the focus describes the system design,including system software architecture design,system function module design,database design;then describes the implementation of the system,focusing on description of the regional management module,client login module,the network centralized management module,implementation of data integration,and gives the key code and the running effect.Finally,the subjects were summarized by the follow-up research on the subject and was predicted.Keywords:WebServer database;server management;SQL Server2005 III 目 录 1 绪论.1 1.1 课题背景与提出.1 1.2 国内外研究现状.1 1.3 选题的意义.3 1.4 论文的组织结构.4 2 相关理论及技术介绍.6 2.1DOT NET 框架介绍.6 2.2 C#介绍.8 2.3 AJAX 技术.8 2.4ADO.NET 介绍.11 2.4.1 设计目标.11 2.2.2 ADO.NET 体系架构.12 2.5EXTJS 介绍.12 2.6 配置系统开发环境.13 2.7 本章小结.13 3 需求分析.14 3.1 需求分析概述.14 3.1.1 功能需求.14 3.2 计费管理系统功能描述.15 4 总体设计.17 4.1 系统的设计思路.17 4.1.1 系统设计结构.17 4.1.2 系统组成模块图.17 4.1.3 系统流程图.18 4.2 数据库设计.19 4.2.1 数据库设计原则.19 4.2.2 数据库概念设计.20 4.2.3 数据库物理设计.22 5 详细设计与实现.26 5.1 系统设计.26 IV 5.2 系统实现.26 5.2.1 主页界面.26 5.2.2 管理员对学生账户的管理界面.27 5.2.3 记账员对学生账户的管理操作界面.28 5.2.4 学生账户查看自己的消费记录界面.29 6 测试.31 6.1 软件测试的目的.31 6.2 软件测试的内容.31 6.3 软件测试方法.32 6.4 测试用例.32 6.5 测试结论.33 7 结论.34 7.1 总结.34 7.2 体会.34 参考文献.35 致 谢.36 毕业设计(论文)知识产权声明.37 毕业设计(论文)独创性声明.38 附录 1(按标题 1 格式排,左顶格).39 1 绪论 1 1 绪论 1.1 课题背景与提出 随着网络技术的发展和教育信息化工程的全面实施,越来越多的学校购置了大量的计算机设备并实现了联网,为师生创造了良好的工作与学习环境。近年来,学校规模不断扩大,高校合并陆续进行,使用计算机进行机房的自动计费管理,是计算机成为当今社会辅助管理手段发展的必然趋势。随着各高校机房数量的增多,机房规模的扩大,机房分布的分散,机房的管理压力也越来越大,如何实现机房的高效管理是许多高校都面临的一个普遍问题。近年来由于学校规模的不断扩大和高校合并的陆续进行,许多学校也面临着校区跨地域的问题,许多学校的不同校区设立自己的教学机房,那么,采用数据库技术的集中式机房记费的管理模式己不能适应这种多个分散机房的管理需求,机房计费管理系统应该是一种基于分布式结构的管理模式。机房管理是一件复杂的工作,随着计算机软、硬件技术的发展,机房的管理与维护难度也在加大。实现机房管理的自动化,是当前机房管理的一个总的趋势。本课题结合安康学院实际情况,以满足机房管理人员的各项需求为前提,主要对基于.NET 平台下的分布式数据库应用进行研究,从提高方便性,简单实用性和数据安全性等应用的角度出发,提出了一个基于 SQLServer2005 数据库的机房计费系统的设计与实现方案。力求能达到系统功能较为完善,具有较好的扩展性和可移植性,系统界面友好,使用方便,可以极大地方便学生上机学习,节省机房管理人员管理机房的时间,提高机房的利用率和管理人员的工作效率,实现机房规范化、科学化和开放式的管理。该课题对推动学院教育和.管理,适应当前信息化技术发展,深化并全面提高学院管理水平具有重大意义。1.2 国内外研究现状 经过调查,国内外机房运行管理方式有很多不同的地方,因此机房安全管理系统的发展情况差别也很大。在国外,高校教育发展相对稳定,不存在学生人数急剧扩大的情况,机房规模不大,管理人员充足,计算机资源充裕,机房使用的压力不大;网络条件完善,网络的普及与便利、上网费用便宜;机房开放程度高,机房基本上都提供免费用机,上机课也没有要求考勤,因此门禁系统、教务管理(排课、考勤等)系统、财务系统等都没有整合到系统中;设备更新速度快而且种类多,机房一般规模不大,配备多样化的各种设备,不仅有 PC 机,西安工业大学北方信息工程学院毕业设计(论文)2 还有苹果机、各种工作站、打印机、扫描仪等,机器 2 年左右进行一次更新;上机人员素质普遍较高,机房制定了严格的实验规范,主要依靠每个人的自觉遵守,机房安全管理系统难以适应这种情况。鉴于这种实际情况,国外在机房管理的改革方面没有国内那么迫切,机房安全管理系统并没有得到广泛的应用。在国内,随着高等教育的迅猛发展,众多的高校机房面临相同的问题:在师资、管理人员不足,又不能大幅提高管理成本的情况下,却要满足急剧增长的学习和上机需求,并且保证教学的质量。于是,许多高校机房进行了管理方式的改革。目前国内机房的管理模式为:大部分学校机房己经在某种程度采用了计算机辅助人工管理模式,但仍有有一些机房停留在人工管理模式阶段。对国内外机房的使用情况进行比较后,可以知道目前国内的条件还比不上发达国家,计算机数量的不足和网络的争用,使得国内公用机房的建设与管理研究在一定的时期内还是非常必要的。国外在机房管理方面的经验值得我们参考,但暂时还不适合我们的国情,从某种程度上,国内对于机房安全管理系统这个专题的研究相对更加深入,对于安全性、稳定性的要求更高。国内的机房计费有很多行之有效的方法,例如记票管理,但其工作量大、操作频繁、效率低下,且上机情况、费用情况很难及时统计,管理起来不方便。再如 IC 卡计费管理,它是一种较好的形式,但需要购买相应的硬件设备,投资较大,且要求网络不能出问题。国内各高校普遍认识到机房人工管理的弊病,先后研制和开发了机房自动收费与管理系统,利用计算机进行辅助管理。这些系统通常是利用数据库技术,采用软硬件结合的方法实现机房的自动化管理。因各学校的实际情况及对机房管理的要求不同,各系统的设计情况也不尽相同。规模较大的院校的计算机开放实验室多采用大型的数据库系统,例如清华大学的计算机开放实验室及其综合管理系统使用的就是 Oracle 数据库。这些大型的数据库管理系统功能丰富、数据库的安全性、完整性、并发控制和数据库恢复等功能完备,但对系统硬件的配置要求较高,设计相对来说也较复杂。一些中小规模的院校如大连大学、江苏理工大学、广州大学、泉州华侨大学等多采用Foxbase、FOXpro 这样的中小型数据库管理系统,其在对关系操作的支持、完整性约束条件、安全保密、并发控制和恢复机制等方面还存在一定的缺陷,需用户自己编程实现。但就其程序运行速度和良好的应用开发环境上还是有很大的优点的。总体来说,应用于公共机房维护管理的软件和设备已经有很多,主要由三种方式来实现:西安工业大学北方信息工程学院毕业设计(论文)3 纯软件方式。纯软件方式使用 C/S 结构,在网络的服务器端建立上机者的中心数据库,在每台计算机的启动程序中嵌入密码输入和校验程序,学生开机后须先输入其用户名和密码以核对身份。纯软件模式的机房管理系统的优点是管理灵活,成本相对较低、易于拓展、兼容性好、易于升级维护,适合 Windows等主流平台,己成为主流产品,慢慢成为机房管理的首选模式2,其具有较高的性价比。因各校校园网发展比较成熟,所以无需过多的硬件投入,同时有效地减少了学生的负担。缺点是系统的安全性差,很容易逃费,这种模式对网络的性能要求比较高,一旦发生网络故障,就会导致系统不能正常运行,给系统计费带来不必要的损失。另外,纯软件模式需要考虑服务器的负载承受能力。纯硬件方式。纯硬件模式一般是在每台计算机上安装一个 IC 卡读写器,同时将上机人员的帐户信息写入所配备的 IC 卡中。上机时将 IC 卡插入安装在每台计算机上的 IC 卡读写器,验证身份后即可使用机器,同时自动定时以扣减1C 卡中的上机费用,结束上机的操作也十分简单,执行下机拔卡即可,纯硬件模式的优点是可靠性高,稳定性好,可以实现无人值守,计费准确,不易逃费。缺点是硬件设施投入较大,学生负担较重,并且嵌入式系统的可维护性较差,难以根据各个学校的实际情况进行灵活设置,同时也难以与现有的校园信息管理系统结合起来。软硬件结合的方式。软硬件相结合的方式是当前采用较多的一种实施方案,这种方式下硬件方案一般采用磁卡、条码、IC 卡等方式,学生通过刷卡登录上机。条码方式应用较多,其最大特点是成本低、易制作,可以和借书卡或饭卡等公用,有效地减少了学生负担。1.3 选题的意义 国外计算机计费管理平台的设计与实现系统最早出现在 60 年代末,由于当时计算机硬件条件所限,机房管理系统的自动化程度和管理手段还远远无法满足实际需求。机房信息管理系统技术是一种多学科交叉的综合应用技术,具有很强的专业性和技术性,所以与一般的软件有很大不同,如果只是简单地提供软件和安装服务,用户不一定能正常应用起来。国外的统计结果表明,早期应用该类技术的机房正常发挥效用的不到 40%。分析其原因,主要 有以下几方面的问题:(1).用户对计费管理系统技术认识不够,配套措施跟不上;(2).计费管理系统的管理模式不合适,又无灵活的变通方式;(4).应用支持及后续服务不够,实施周期过长;(5).实施成本超出预算。西安工业大学北方信息工程学院毕业设计(论文)4 但它的管理思想却得到了肯定和完善。进入 90 年代以后,伴随着微型计算机系统的不断发展,计费管理系统技术的应用系统进入了一个崭新的发展时期。C/S 构架的管理模式成为主流,普遍采用 SQL 网络数据库,大大提高了数据处理能力。近年来 Windows NT 网络操作系统的兴起,使得基于该平台开发的商业化的计费管理系统产品开始流行。结合科学的管理思想和质量保证体系,使得计费管理系统在提高分析机房的整体水平方面发挥着越来越大的作用。计费管理系统引发了机房在管理思想、组织机构和测试技术诸方面的升华和变革。目前,在国外发达国家,计费管理系统已得到普遍采用。与国外相比,国内的情况则有所不同,虽然早在 70 年代末,就有人提出过计费管理系统思想,但由于计算机技术水平较低,加之分析测试设备比较落后,所以当时的计费管理系统仅限于完成简单数据处理的单机模式。但由于管理模式、文化内涵以及计算机应用水平等方面的差异,使得系统的大部分功能无法利用,造成巨大浪费。而今,计算机计费管理平台的设计与实现系统在国内大范围的使用。有许多的大学,如清华大学、北京大学等,还有中国科学院软件研究所、石油化工科学研究院等从 90 年代初就开始了这方面的工作,经过多年的探索和应用试验,结合国际计费管理系统的最新发技术及国内机房的实际状况,开发出了拥有自主知识产权的、适合国内各大学及大企业分析测试机房实际需求的计费管理系统。计费管理系统从最初仅仅完成数据存储、有限的网络功能,发展到现在可以处理海量数据,具备完善的管理职能,并且能够运行于 Internet 之上,极大地提高了机房的运行效率,大幅度节约了机房的运行成本通过近几年的信息化建设,国内大部分机房都配备了自己的局域网系统,各种计算机设备的配置也很高,但是运行于网上的软件系统却很少。当然,也有很多的则是在考虑下一步如何开发计费管理系统这一问题。特别是经过近几年互联网热潮的影响,网络、信息化等观念己经深入人心。并且随着全球经济一体化进程的加快,国家也在大力提倡、资助各行业的信息化进程。1.4 论文的组织结构 本论文的组织结构如下:第一章:介绍关于计费管理平台的设计与实现系统的开发背景、开发意义以及开发者的主要工作。第二章:介绍了开发过程中所使用的相关技术。第三章:介绍了对本系统所做的需求分析,包括功能需求分析,数据模型分析以及非功能需求分析。西安工业大学北方信息工程学院毕业设计(论文)5 第四章:介绍了本系统的总体设计,包括系统流程图,系统模块图以及系统所需的数据库的设计。第五章:介绍了系统的详细设计及系统实现的各个界面。第六章:介绍了系统的测试,其中有测试的目的,内容,方法,结果等。第七章:系统完成后的结论,及总结体会。2 相关理论及技术介绍 6 2 相关理论及技术介绍 随着信息管理自动化水平的不断提高和网络技术的迅猛发展,基于 B/S 结构的管理系统也正在普及。目前开发 B/S 系统的主要技术有 ASP.NET、JSP、PHP等,这些技术主要是基于传统的动态页面技术,用户在向 WEB 服务器发出 HTTP请求后,由于需要完全刷新页面,页面可能会处于长时间等待状态。另外,由于图形显示是在客户端的浏览器上,信息交互又是通过这种无状态的协议,所以很难实现由从服务器直接控制客户端显示变化情况。现在使用 AJAX 技术结合XML,再配合 C#技术,将传统的动态绘图页面隐藏到了 AJAX 的后台,我们所看到的是一个静态页面,动态程序反馈的结果被直接地显示在这个页面上4。2.1DOT NET 框架介绍 DOT NET 框架是 Microsoft 公司推出的为一个集成环境,可以在 Internet、桌面(如 windows 窗体),甚至异动设备上无缝地开发和运行应用5。其主要目标是:提供一个一致的面向对象编程环境,无论对象代码在本地还是在远程执行;提供一个保证代码可以在任意操作系统上运行的可移植环境;提供一个可提高代码执行安全性,以保证程序安全运行的可管理环境。为了实现这些目标,.NET 形成了由公共语言运行库 CLR 和框架类库 FCL 构成的体系结构,其结构如图 2-1 所示。a.公共语言运行库 CLR(Common Language Runtime,公共语言运行库)公共语言运行库是.NET Framework 的基础,用来运行代码并提供内存管理、线程管理和远程处理等核心服务。在 CLR 中运行的代码称为托管代码(Managed Code),不在 CLR 中运行的代码称为(UnmanagedCode)。托管代码编程有许多优点,如不同语言混合编程、安全性高、易于调试和分析、组件交互模型简化等。基于公共语言运行库的语言编译器生成的代码是面向运行库系统的,并不能直接在 CPU 上执行,这种代码称为 Microsoft 中间语言 MSIL(Microsoft Inter mediate Language),在执行时还需要 JIT 编译器将 MSIL 代码转化成机器码。因此在.NET 中编译代码分为两步:首先把源代码编译成 Microsoft 中间语言(MSXL)。其次 JIT 编译器把 MSIL 编译成可执行代码。西安工业大学北方信息工程学院毕业设计(论文)7 操作系统基础类库 System.IO,System.DrawingADO.NETWindow窗体Web应用 ASP.NET web 服务CLR公共语言库 CTS 即时编译器、内存管理FCL 图 2.1 DOT NET 框架图 b.NET 框架类库 FCL(Framework Class Library、框架类库)是一个与公共语言运行库紧密集成可重用的类型代码库,它包括类、接口、和值类型,这些类型可以使开发过程方便、快速而且可以优化整个开发过程,还提供了对系统功能的访问7-8。FCL 的类型符合公共语言规范(CLS),所以它们可以在任何语言中使用,只要这种语言的编译器符合 CLS,如果知道如何使用这些类型,不论你选择哪一种.NET 语言编程,所要做的都一样。.NET 框架类库中的类型主要执行以下功能:(l)表示基础数据类型和异常。(2)封装数据结构。(3)执行 1/0。(4)访问关于加载类型的信息。(5)调用.NETFramework 安全检查。(6)提供数据访问、多客户端 GUI 和服务器控制的客户端 GUI。西安工业大学北方信息工程学院毕业设计(论文)8 2.2 C#介绍 C#语言及其相关的.NETFramework 开发环境是近年来最为重要的新技术,是 Microsoft 为推行.NET 战略而发布的一种全新的彻底的、面向对象的编程语言,它具有清晰的面向对象的语法结构9。C#是一种简洁、类型安全的面向对象的语言,开发人员可以用它来编写在.NET Framework 上运行的各种安全、可靠的应用程序,如 Windows 窗体程序、XMLWeb 服务器、分布式组件、C/S 应用程序、数据库应用程序等。C#语言的语法风格类似于 C、C+和 Java,这使得熟悉 C、C+或 Java 的人都可以迅速的学会使用 C#,利用这种先进的高级语言进行高效地工作。C#语法又简化了 C+语法中很多复杂的东西,同时增加了很多强大的功能。C#还支持泛型方法和类型,这使得 C#可以提供更好的类型安全和性能。因此,C#语言目前成为一种主流的面向对象开发语言,深受开发人员的喜爱。本系统选用 C#语言的原因有以下几点:(1)C#语言是一种简单、类型安全、面向对象的编程语言,它的语法风格和C/C+相似,但又比 C/C+易学、易用,而且还拥有甚至超出了 C/C+的强大功能。(2)C#为开发人员方便地集成已有代码提供完全的 COM 平台支持。(3)C#提供自动内存垃圾回收的功能,减轻开发人员的负担。(4)C#对基于 Web 的组件交互提供 XML 支持。2.3 AJAX 技术 AJAX 是由美国人 Jesse James Garrett 提出的,他将 AJAX 定义为“ehronous JavascriPt+XML”的简称,也就是异步 JavascriPt 和 XML 处理。从原理上看,主要是 AJAX 可以通过调用 HttPRequest 实现与服务器的异步通讯,并最终在网页上实现丰富友好的用户界面。在 B/S 模式下应用 AJAX 技术实现实时数据的动态显示,其工作过程为:显示页面通过 JAVASC 租 PT 不断调用 AJAX 引擎,AJAX 引擎一方面不断向WEB 服务器发出 HTTP 请求,从数据库获得实时数据以 XML 数据格式返回,一方面利用 VML 控制画图,同时把显示页面上的数据信息更新。另外,为了获得更好的效果,可实现图形的局部更新,如在动态波形图中,由于变化的只是波形数据,而背景网格可以在显示页面第一加载的时候画好,这样每次更新的数据只有波形数据,从而减少了网络的数据流通,降低了网络负荷10。其工作方式如图 2-2 所示 西安工业大学北方信息工程学院毕业设计(论文)9 AJAX引擎服务器数据库 图 2.2 AJAX 工作方式 a.XMLHttpRequest 介绍 XMLHttpRequest 是 XMLHTTp 组件的对象,通过这个对象 AJAX 可以像桌面应用程序一样只同服务器进行数据层面的交换,而不用每次都刷新整个页面,也不用每次将数据处理的工作都交给服务器来做,这样既减轻了服务器和网络负担又加快了响应速度、缩短了用户等待的时间。在使用 XMLHttPRequest对象发送请求和处理响应之前,必须先用 Javaseript 创建一个 XMLHttpRequest对象并初始化。标准 XMLHttPRequest 对象的方法与属性如表 2.1、2.2 所示。表 2.1 标准 XMLHTTPRequest 对象方法 方法 描述 Abort 停止请求 Getalinerequestheaders()把 HTTP 请求所有动作作为键值对返回 Open(method,url)建立服务器的引用 Send(content)向服务器发送请求 Setrequestheaders(“header”,”value”)把指定的首部设置为所提供的值 表 2-2 标准 XMLHTTPRequest 对象属性 方法 描述 Onreadystatecharge 状态改变触发事件 Readystate 应答状态 Responsetext 服务器响应字符串 Responsexml 服务器响应 xml State 服务器 http 状态 Statutext HTTP 状态响应文本 西安工业大学北方信息工程学院毕业设计(论文)10 b.XML 技术基础 XML 是 The Extensible Mark Language 的简写。和 HTML 一样,XML 同样来源于 SGML,但 XML 是一种能定义其他语言的语言,以强大的扩展性满足网络信息发布的需要,它于 1998 年 2 月 10 日被确立为 W3C 标准。XML 基于SGML 一标准通用标记语言(Standard Generalized Mark Laguage),是专门为Web 而设计的。XML 是一种标记语言,XML 被设计用来描述数据,具有实体(entity)型态描述的自然属性,其本身是层次化、半结构化构成事物信息描述的数据,XML 中数据属性的标签没有被预定义,可以根据需要自行定义标签。XML 实现了浏览器中数据与页面表现形式的分离,被设计用来描述数据,旨在描述信息,其焦点是数据的内容。XML 实现了浏览器中数据与页面表现形式的分离,被设计用来描述数据,旨在描述信息,其焦点是数据的内容。对一个朴素的 XML 文档来说,XML 仅仅包含了描述事物信息属性、标签及其数据元素。标签是左尖括号()之间的文本,有开始标记(例如)和结束标记(例如)。元素是开始标签、结束标签以及位于二者之间的所有内容。属性是指位于标签内部的包含等于号(=)的数值描述。XML 是免费的、可扩展的,XML 标签没有被预定义。在使用时必须“发明”自己的标签。正是因为这种无限可能的属性标签可扩展性,使得 XML 作为数据描述时,可以完成各种属性的需求。XML 的这种特性,使得 XML 数据无所不在。XML 将会成为所有数据处理和数据传输的最常用的工具11-12。a.XML 的有以下优势:(l)自定义标签。XML 最具魅力的地方是标签的可扩展性,XML 允许使用者按照内容,创建自己的标记语言,以确定地对信息进行描述。在扩展自由的同时也必须遵循一些 XML 规则。(2)结构化的数据。XML 的使用者不仅可以定义文档中元素的词汇表,还可以指定元素间的关系,将文件的元素进行层次化管理,形成以逻辑内容为基础的标记结构。这种结构化、良好的内容格式,为信息组织提供了强有力的支持。(3)方便的数据交换。由于 XML 是一种公共的、普遍适用的数据格式,人们可以使用任何一种理解 XML 的工具来操作数据,而不会受到数据格式的限制。因此很适合作为不同系统之间交换数据的标准。另外,XML 和 Java 技术的紧密结合,使得数据通过网络更加容易移植。二者的结合是网络系统上交换信息的最适宜选择。有了 XML,我们就可以利用任何理解 XML 的工具来处理交换信息,而不必花费大量的时间和精力去寻找或编写转换程序。此外,XML西安工业大学北方信息工程学院毕业设计(论文)11 具有比 HTML 优越得多的交互特性,它可以根据多种来源集成数据并将其作为一个文档来显示,数据还可以马上进行重新排列,同时数据的各个部分可以根据用户的需要显示或隐藏。(4)强大的链接功能。在实际应用中,我们需要能够定义、查找、指向和链接 XML 文献或文献片段,XPath,XQuery,Xpointer,Links 等技术就为我们提供了灵活实现这些操作的能力。2.4ADO.NET 介绍 2.4.1 设计目标 ADO.NET 的设计目标是:简单地访问关系型和非关系型数据库,将关系型数据库和 XML 访问统一起来,帮助程序开发人员在互联网上使用高效的多层数据库应用程序。与微软先前数据库访问技术相比,ADO.NET 可以扩充以支持更多的数据源。a.简单地访问关系数据 ADO.NET 的主要目标是简单的访问关系型和非关系型数据,即提供一些易于使用的类描述关系数据库中的表、元组和数据项。另外,.NET 数据提供程序不涉及中间层,程序开发人员直接与数据提供程序通讯,该数据提供程序使用数据存储区的低级编程接口与存储区通讯。这是在 ADO.NET 中的新概念,可以简便地扩展数据访问接口。b.可扩展性.NET 数据提供程序更容易扩展,他们只需要支持相同的基础接口,并可以在适当的时候提供额外的专用功能,以便从各种数据源对数据进行操作。ADO.NET提供了三种内置的.NET 数据提供者:OLEDB 数据提供者、用于Microsoft SQL server 数据提供者和 ODBC 数据提供者。可以通过 OLEDB 和ODBC 访问数据格式(比如 Microsoft Access)、第三方数据库和非关系数据。c.支持多层应用程序 在当今电子商务应用程序的体系结构中最常见的就是多层体系结构,ADO.NET 可以帮助程序开发人员在互联网上使用高效的多层数据库应用程序。而且ADO.NET使用标准的XML格式在开放式互联网参考模型的层与层之间进行通讯,并允许数据通过互联网防火墙进行传递。d.统一 XML 和关系数据访问 ADO.NET 另一个重要的目标是沟通在行、列和 XML 文档的关系数据,其中 XML 文档具有分层的数据结构。结合 XML 和 ADO.NET 构建的.NET 技术可以扩展.NET 的用法。西安工业大学北方信息工程学院毕业设计(论文)12 2.4.2 ADO.NET 体系架构 过去,基于连接的双层模型结构是进行数据处理的基础。当多层体系结构越来越多地被采用在数据处理中,程序开发人员正逐渐转变到使用断开访问方式,以便为应用程序提供更好的伸缩性。用户可以使用 XML 基于节点的分层法或基于列的表格式数据集关系法来访问和更新数据,XML 为 ADO.NET 对数据的断开式访问提供了有力的支持,.NETFramework 中 XML 类的设计与ADO.NET 的设计全部采用了同一结构。ADO.NET 的两个核心组件:Dataset 和.NETFramework 数据提供程序,设计目的就是为了从数据操作中分解出数据访问。.NETFramework 数据提供程序中的数据连接类包括:provider Factory、Conunand、Conneetion、Data Adapter 和Data Reader 等。ADO.NET 的断开式结构的核心组件是 Dataset。设计 Dataset的目的就是为了实现独立于任何数据源的数据访问。因此,它可以用于 XML数据或用于管理应用程序本地的数据,以及各种不同类型的数据源。Dataset 包含一个或多个 DataTable 对象的集合,这些对象由数据行和数据列以及主键、外键、约束和有关 DataTable 对象中数据的关系信息组成13。ADO.NET 结构的另一个核心元素是.NETFramework 数据提供程序,这部分组件主要用于与数据源通讯,其设计目的也十分明确,就是为了实现对数据的快速访问和操作。Provider Factory 是 ADO.NET 中新添加的类,类似与一个类的加工厂,帮助开发人员为.NET 数据提供程序创建其他类的实例。Connection表示与数据源之间的连接起到桥梁的作用,其他对象通过它与数据库建立通讯。Command 对象表示对数据库的查询访问、运行存储过程的调用、修改数据以及返回特定参数信息的数据库命令。DataReader 支持最小特性级,用于以最快的速度查询检索并检查查询所返回的行。最后,DataAdapter 代表了微软数据访问模型的全新的概念,充当了数据库与 ADO.NET 模型中非连接对象的桥梁。DataAdapter 使用 Command 对象在数据源中执行 SQL 命令,以便将数据加载到Dataset 中。2.5EXTJS 介绍 计算机迅速发展,信息化系统不断的磅礴发展,从最早的 CS 程序想 BS 程序发展,B/S 程序有着自身的优势客户端采用统一的网页浏览器,浏览器把客户端开发工作解放出来。这个是 B/S 模式成为当今主流的一个重要因素14-15。但是 B/S 的前端设计采用 CSS、DIV、JAVASCRIPT 进行设计,JavaScript 一方面是一种基于对象的语言,每种浏览器都有自身设计,这使得在前端设计上对很多开发者存在一定困难,专业的界面设计需要比较专业的行业知识与视觉西安工业大学北方信息工程学院毕业设计(论文)13 审美观.EXTJS 正式解决各种需求配合后台设计的 AJAX 框架,是一套优秀的JS 框架。ExtJS 是一个用 javascript 编写,与后台技术无关的前端 ajax 框架。因此,在实际的应用开发中以.Net、Java、Php 等各种开发语言作为后端开发语言,而使用 ExtJS 作为前端开发语言。EXTJS 是一套基于 Javacript 的 AJAX 框架,界面美观、功能强大。在 WEB界面设计中占领一席之地但是 EXTJ 虽然更能强大,但是也总有不完美之处。总结 EXTJS 的优点如下:(1)统一的类库和接口:在对 EXTJS 运用熟练了之后能体会到它像是一个运行在浏览器上的运行时框架。我们要实现各种功能的应用的开发,只需要使用 ExtJS 提供给我们的组件接口即可,这些组件和控件的使用非常简单方便;(2)异步请求:采用了 Ajax 机制,不用像传统的页面一样要刷新整个页面,局部刷新即可;(3)相对丰富的文档和示例:毫无疑问,刚刚接触到 EXTJS 的人多数都是被它附带的例子和开发文档吸引过去的,它的文档做的确实不错;(4)与后台无关:无论后台语言用的是 java,c#还是 php,ExtJS 都能够协同进行工作;(5)优秀的界面:提供了比较成熟的界面,相比传统网页精美很多,省去了美工的工作。2.6 配置系统开发环境 开发环境:Windows 7。开发语言:A 和 C#。开发工具:Microsoft Visual Studio 2008+SQL SERVER 2005 本系统采用 Microsoft Visual Studio 2008,SQL SERVER 2005 为主要开发工具,在 Windows 7 操作系统下,既考虑了系统的需求,又兼顾了运行的效率,以及今后系统的功能拓展等。2.7 本章小结 本章介绍了开发该系统所用到的 DOT NET 框架及其相关技术,并详细的介绍了 C#语言及其相关的.NETFramework 开发环境。然后介绍了 EXTJS 基于Javacript 的 AJAX 框架,并分析了 EXTJS 的优缺点。最后简要介绍了条形码及应用的必要性以及配置系统开发环境。3 需求分析 14 3 需求分析 随着现代信息技术的迅猛发展,计算机运用越来越广泛,如何有效地利用已有资源,建构基于网络的一个管理方便、易于查询、控制性强、功能齐全