《2022年病室病人信息管理系统的设计方案与实现 .pdf》由会员分享,可在线阅读,更多相关《2022年病室病人信息管理系统的设计方案与实现 .pdf(48页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、病室病人信息管理系统的设计与实现目录第一章绪论 6 1.1 医院信息系统 HIS 的概念 6 1.2 医院信息系统国内外发展情况及现状7 1.2.1 国外医院信息系统的动态7 1.2.2 国内医院信息系统的动态8 1.3 我国医院信息系统存在的问题8 1.4 课题来源、意义及研究内容9 1.4.1 课题来源及意义9 1.4.2 课题研究的主要内容10 第二章系统的设计思想及理论基础11 2.1 系统开发方法探讨11 2.1.1 生命周期法 11 2.1.2 原型法 12 2.1.3 面向对象方法 12 2.1.4 生命周期法开发病室病人信息管理系统13 2.2 系统的运行模式选择13 2.2.
2、1 信息系统运行模式的发展13 2.2.2 B/S模式概述 14 2.2.3 B/S模式的病室病人信息管理系统15 2.3 系统开发技术 16 2.3.1 ASP.NET 技术 16 2.3.2 ASP.NET 的三层架构 18 2.3.3 基于 ADO.NET 访问数据库的原理19 第三章系统需求分析20 3.1 系统的开发目标 20 3.2 医院住院处的业务流程21 3.3 系统数据流图 22 3.4 数据字典 22 3.5 系统的 E-R图 24 3.6 系统的功能需求 28 3.7 系统的性能需求 28 第四章概要设计 30 4.1 Web 页面流程图 30 4.2 系统的模块划分 3
3、0 4.3 数据库设计 31 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 1 页,共 48 页II / 48 4.4 各功能模块说明 34 4.4.1 系统管理部分 34 4.4.2 系统操作部分 34 第五章详细设计与实现35 5.1 开发工具的选择 36 5.2 数据库的详细设计36 5.2.1 数据库建表 36 5.2.2 数据库中的存储过程38 5.3 系统主要功能模块的实现42 5.2.1 登录模块 42 5.2.2 操作员管理模块43 5.2.2 病人管理主界面45 结论 47 致谢错误!未定义书签。参考文献 48精选学习资料 -
4、- - - - - - - - 名师归纳总结 - - - - - - -第 2 页,共 48 页III / 48 摘要医院信息管理系统 (HIS是数据库应用的一个重要领域。随着信息管理系统的不断发展与完善,它越来越广泛地被应用于各类医院。大中型医院,因其人员众多、管理复杂更迫切的需要用管理信息系统来参与管理,使管理更加科学、有效。本文分五章对所做工作进行论述和说明。第一章概述了医院信息系统HIS),给出了医院信息系统 HIS)的几个较权威的定义,同时分析了国内外医院信息管理系统的发展现状及我国医院信息系统存在的问题,并根据以上分析提出了课题的来源、意义和主要研究内容。第二章提出了系统的设计思想
5、及其理论基础,其中涉及到软件开发方法 生命周期法、原型法和面向对象法)、系统运行模式 is one important part of database application.Withthedevelopment of HIS and its widely extendedappli- cation,it has been adopted by more andmore hospitals. Some big hospital, because of its big number of employers, and complexmanagement, especially, needs H
6、IS. With the help of HIS, the management will become morescientific. There are five chapters in the paper to describe the job.In the first chapter,the paper briefly introduces HIS.It provides a few definition of HIS,and analyzes the current situation ofthe development of hospital information system
7、at home and abroad and existing problems of HIS of our country.Finaly,according to the above analysis,the paper puts forward thesource,meaning and primary content of the subject. In the second chapter,the paper provides the design ideas and its basic theory of the system,involving design method of s
8、ystem(StructuredDesign Life Cycle 、 PrototypingMethodologies、 OO,run mode of system(such as C/S and B/S,and design technologies of system such as ASP.NET and ADO.NET. In chapter three to chapter five, emphasising onthe analysis of the parts of Ward and Patient Information System,it tries to make afr
9、ameworkof itfrom the aspacts of Requirmentanalysis, System Design ,Detailed design and Implement.OnRequirmentanalysis,it presentes DFD、datadictionary and analysis of function requirment and performancerequirment of the system.The paper also describes module division,database design on System design,
10、and table creation,Storage process definition,Interface Design on detailed design and Implement. KEY WORDS: HIS, B/S mode, ASP.NET, ADO.NET 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 4 页,共 48 页V / 48 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 5 页,共 48 页6 / 48 第一章绪论1.1 医院信息系统 HIS 的概念医院信息系统 HI
11、S(Hospital InformationSystem一般指基于计算机处理的医院医疗和管理信统。自从医院信息学诞生以来,HIS的研究开发一直是医药信息学的主导方向。医 药 信 息 学 (Medical Information这 一 名 词 首先 由世 界医 药信 息学 大会(MEDINFO 提出,并已为国际学术界所接受。第六届世界医药信息学大会在北京召开,标志我国医药信息领域、包括HIS的研究开发进入了一个新的阶段。现代医院是从病人护理治疗到临床研究、从药物生产供给到资金管理、从营养配餐到教育培训的多功能组织体系。医院最基本的功能就是通过检验、诊断等各种手段获取病人疾病信息,并对其信息进行加
12、工、整理、分析以制订治疗方案,然后通过药物、手术、放射、营养等方法进行综合治疗。一般认为,医院 80% 的活动是与病人信息的获取、分析、处理和决策有关的。现代医院的HIS是多层次多功能的复杂系统,这也是HIS至今没有一个公认定义的原因之一。HALL 为HIS给出了一个技术意义上的定义: “HIS是一个基于计算机的系统,该系统接收和维护有关病人的数据,并从这些数据中产生用于病人治疗、医院管理和医学研究的信息,提供最优医疗资源配置的决策、支持。”HUET 则给出了 HIS基于信息学的定义 : “HIS是一个基于医院医疗和医院管理信息的系统,该系统进行与医院目标相关的信息存贮、转换和加工处理。”国内
13、一些学者认为 HIS是收集病人在诊疗、护理、保健及医院人、财、物实力的资料和数据,加以分析、处理和维护,以利于医院管理和服务的自动化系统。不管HIS如何定义,一般意义的HIS应包括医院病人管理、药事管理、病案管理、财务管理、检验数据处理、病人营养和护理、人事管理等功能。从系统的纵向功能看,则应包括广泛的数据收集、信息提取和分析控制,支持医院医疗、行政事务管理,临床教案和科研,并最终支持医院管理决策,以提高医疗水平和经济效益。总之, HIS是以现代信息科学为基础,并涉及医学科学、语言学、管理科学、决策科学等学科的一门边缘科学。随着现代信息科学如信息网络技术、人工智能技术的发展,以及上述这些相关学
14、科的进步,HIS的概念范畴及其技术实精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 6 页,共 48 页7 / 48 现手段也将不断扩充、更新。HIS的发展将推动医院管理现代化、扩大业务范围、提高医疗水平,增加经济效益。1.2 医院信息系统国内外发展情况及现状1.2.1 国外医院信息系统的动态电子计算机在医院的应用已有四十多年的历史。60 年代初,美国便开始HIS 的研究。著名的麻省总医院 开发的 COSTAR 系统是 60 年代初开始并发展到今天成为大规模的临床病人信息系统。随着计算机技术的发展,70 年代,HIS 进入大发展时期,美日欧各国的医
15、院,特别是大学医院及医学中心纷纷开发 HIS,成为医药信息学的形成和发展的基础。70-80 年代,美国的 HIS 产业已有很大发展。 1985 年美国全国医院数据处理工作调查表明,100 张床位以上的医院, 80% 实现了计算机财务收费管理,70% 的医院可支持病人挂号登记和行政事务管理。 25% 的医院有了较完整的HIS,即实现了病房医护人员直接用计算机处理医嘱和查询实验室的检验结果。10% 的医院 (2530有全面计算机管理的HIS. 90 年代以来随着网络技术的普及,BS结构的应用, HIS 在网络应用上有了明显的进步,为患者就医带来了更大的方便。日本的 HIS 开发和应用从 70 年代
16、初开始。多数日本医院是80 年代以后开始进行 HIS 工作的,但发展十分迅猛,规模相当大,是以大型机为中心的医院计算机系统。如北里大学医院的工BM/3090 双机系统。当前日本的HIS 总的趋势是系统化、网络化、综合性,开始走自上而下的开发路线,一般都有大型机作为中心、支撑整个系统工作,并尽量采用微机和网络技术,投资规模大,正在实现 ordering“工作方式,即数据从发生源直接输入计算机。到1991 年统计有近 10 家实现或基本实现此种方式。支持诊疗的功能在不断加强,系统24小时运行。不少软件是医院和计算机公司联合开发的,一些大公司也开发了一些通用的医院信息管理软件包,也有些医院自己开发。
17、如北里大学,开发了综合的 HIS,开发费用 ( 机器设备除外 为 3 亿 4 千万日元 ( 约合人民币1300 万元。日常运行费用支出为一年5 亿 1 千万日元 ( 约合人民币 2000 多万元 。欧洲的 HIS 发展比美国稍晚,大多数是70 年代中期和 80 年代开始。欧洲HIS 的特点是实现了一些区域信息系统。如丹麦的Red System,管理 76 所医院和诊所。法国第八医疗保健中心实现了能管理三所大医院和三所医药学院的一体化信息系统一Grenoble Integrated HIS。随着初级卫生保健工作的发展,欧洲各国区域性医院计算机网络将实现。目前欧共体的SHINE工程己经开始,英法意
18、德许多公司都参与了此项工程。在分布式数据库系统和开放网工程方面己做了大量工作。1.2.2 国内医院信息系统的动态计算机 70 年代末期就进入了我国医疗行业,当时以IBM 的 M340小型机为主,只有少数几家大型的部属综合医院和教案医院拥有,如北京协和医院、北京肿瘤医院、 301 医院等,主要应用于科研和教案,还没有应用于HIS 的管理。80 年代初期,随着苹果PC机的出现和BASIC语言的普及,一些医院开始开发一些小型的管理软件,如工资软件等;80 年代中期,随着 XT286 的出现和国产化,以及DBASEIII 和 UNIX网络操作系统的出现,一些医院开始建立小型的局域网络,并开发出基于部门
19、管理的小型网络管理系统,如住院管理,药房管理等。进入 90 年代, NOVELL 网和 FOXBASE, FOXFRO数据库日益盛行,完整的医院网络管理系统的实现已经成为可能,于是一些有计算机技术力量的医院开始开发适合自己医院的医院管理系统。一些计算机公司也不适时机的开发HIS,如 HP公司 ( 与 301 医院合作 、IBM 公司、微软公司、浪潮公司。随着新世纪的到来医院的 HIS 系统又面临着许多新的任务和挑战。1.3 我国医院信息系统存在的问题目前国内的部分医院拥有简单的医院信息管理系统,但受软件本身的功能和系统使用者的技术水平限制,医院信息管理系统并不能达到预期的效能。由于现有软件客户
20、化不完善,许多医院存在对同一工作手工管理与计算机管理并存的现象,造成了重复劳动和人员浪费。同时医院信息管理系统中的部分先进功能因与医院的管理不匹配而闲置。目前这些 HIS 系统大都存在如下一些问题: 1. 软件水平较低目前所使用的HIS 系统一般只能做些初级的事务处理,例如仅模仿原有的手工工作流程,而缺乏对所采集数据的整理分析。也有的软件开发之后用了一段时间就停下了,坚持不下去。有些医院甚至出现较频繁的更换医院信息管理系统的现象。2. HIS 系统不完整目前所使用的多数HIS 系统,不能完整的覆盖病人就医和医院管理的每个环节,造成数据采集的不完整,进而影响HIS 系统的功能和运行效率。部分医院
21、的 HIS 系统分为门诊和住院两个独立部分,这为数据统计、科室核算和患者精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 8 页,共 48 页9 / 48 就医带来不必的要麻烦 ( 部分住院患者需要门诊科室的医疗配合。多数医院中HIS 系统的主要任务是为医院财务监管提供原始数据,而这些系统只覆盖了医院的收入部门如挂号处、收费处、住院处、药房等;对设备和供应部分却没有管理,造成医院在每一时刻只知道医院收入是多少,却不知道医院支出的具体数目。这就为医院的资产管理和成本核算造成了困难。3. 存在重复开发的现象据一个省调查,几年来,总共开发262 个工程中,
22、工资系统就有41 个,医疗统计 21 个,人事 21 个,重复率达70% 多。4. 软件的客户化和维护困难软件中有部分先进功能由于客户化程度较低常常在实际工作中被闲置。医院的个性化需求在提交开发商之后要经过漫长的等待,难以满足医院实际工作的需要。 5. HIS系统设计的理念问题多数 HIS 系统被设计成为财务工作服务的系统,忽略了对医疗过程和患者的服务功能,造成了使用中“人围着系统转”的现象。产生以上现象的主要原因是: (1各医院计算机专业人才缺乏,技术力量薄弱,特别是缺少高层次系统分析人员和跨专业复合型人才。 (2工程多,力量分散。 (3医院经费有限,很难建立起理想的软、硬件支撑环境。 (4
23、全国没有一个较高水平、可广泛推广的医院管理软件包。(5软件没有一个统一的标准,难以推广。(6单位管理方式有一定差异,软件不能通用。1.4 课题来源、意义及研究内容1.4.1 课题来源及意义住院管理系统是医院信息管理系统的一个子系统,作为医院管理的重要组成部分,其管理工作的效率、准确程度直接影响着医院的社会效益、经济效益。在使用计算机系统前医院的信息管理都是手工操作。手工操作手续繁杂,劳动强度大且工作效率低,医师护士和管理人员的大量时间都消耗在事务性工作上,致使”人不能尽其才”。在住院管理方面,则长期以来存在着住院病人信息滞后,无法动态反映住院部各病区实际情况,造成管理者不能全局综观医精选学习资
24、料 - - - - - - - - - 名师归纳总结 - - - - - - -第 9 页,共 48 页10 / 48 院各病区。由于不能及时反映住院病人费用情况,无法对费用超支及时报警,致使病人欠费情况严重,给医院带来严重的经济困难;结算时才将病人全部费用进行汇总,手工结算工作量大,易出差错,效率低,耗时长,使病人办理出院手续时间过长,给病人带来极大不便;而且由于手工抄报,查询病人住院情况极为不便。开发住院信息管理系统是解决上述问题的有效途径。住院信息管理系统的有效运行,将有助于医院各项工作的效率和质量提高,促进医学科研、教案;减轻各类事务性工作的劳动强度,使他们腾出更多的精力和时间来服务于
25、病人;改善经营管理,堵塞漏洞,保证病人和医院的经济利益;提高医院的社会效益和经济效益。完整的住院管理系统实现信息的全过程追踪和动态管理,从而简化医师护士和管理人员的工作。使用计算机对住院病人、病区和职工进行管理, 具有着手工管理所无法比拟的优点, 如: 检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高住院病人、病区和职工管理的效率 , 也是医院管理的科学化、正规化管理, 与先进科学技术接轨的重要条件。1.4.2 课题研究的主要内容开发出能够满足目前医院需求,又在保证先进性、开放性、投资保护性、可扩展性的前提下尽量降低系统造价的医院住院管理信息系统。达到
26、具备系统登录、操作员管理、入院出院管理、住院管理、查询、回访等功能。具体地说,系统至少包含以下功能:1)系统登录模块:合法用户可进入,非法用户拒绝登录。同时要能够设置用户的使用权限,用户登录后只能进行其权限所允许的操作。2)操作员管理,能够进行操作员的增加、删除和修改、查询,密码设置与修改。3)数据维护模块:可以增加、修改、删除病人信息;4)查询:能够进行多种条件的单独与组合查询;出发来构造系统,并在系统构造中尽可能运用人类的自然思维方式。具体地讲,面向对象技术是从问题域中客观存在的事物出发来构造软件系统,用对象作为对这些事物的抽象表示,并以此作为系统的基本构成单位。每个对象都有精选学习资料
27、- - - - - - - - - 名师归纳总结 - - - - - - -第 12 页,共 48 页13 / 48 其属性和服务,属性表示事物的静态特征,操作表示事物的动态特征。对象的属性和服务结合为一体,对外屏蔽其内部细节,称作封装。把具有相同属性和相同服务的对象归为一类,类是这些对象的抽象描述,每个对象是它的类的一个实例。通过在不同程度上运用抽象的原则,可以得到较一般的类和较特殊的类,特殊类继承一般类的属性和服务。复杂的对象可以用简单的对象作为其构成部分,称作聚合。对象之间的消息通信表达对象之间的动态联系,对象之间的关联表达对象之间的静态关系。面向对象方法(OO 的技术属性主要是面相对象
28、的建模技术 (OMT-ObjectModelingTechnofogy ,使用对象模型、动态模型、功能模型构造系统结构。OO方法开发过程主要包括面向对象的分析(OOA 、面向对象的设计 (0OD 、面向对象的程序 (OOP 。面向对象法是一种围绕对象进行系统分析和系统设计,然后用面向对象的工具建立系统的方法。这种方法可以适用于各类信息系统的开发,但是不能涉足系统分析以前的环节。2.1.4 生命周期法开发病室病人信息管理系统通过比较三种开发方法,本系统的设计决定采用生命周期法。根据生命周期法,在系统的开发过程中将病室病人信息管理系统的开发过程分为需求分析概要设计详细设计编码测试使用和维护等几个阶
29、段。详细情况请看后面章节。2.2 系统的运行模式选择2.2.1 信息系统运行模式的发展近年来,随着计算机和网络技术发展,信息系统运行模式先后经历了巨大革新。纵观整个信息系统平台的发展,总共产生过四种运行( 开发模式: 主机终端模式、文件服务器模式、客户机/ 服务器模式 (Client/Server:C/S 模式和浏览器 / 服务器模式 (Browser/Server:B/S 模式。 (1主机终端模式信息系统模式最先出现的是集中式,也叫主机终端模式。在这种集中式结构里,客户机和主机之间传递数据的方式非常简单,计算机的所有资源(数据 都在主机上,所有处理(程序 也在主机上完成,其应用程序逻辑和数据
30、都驻留在主机中,不可能真正划分出应用程序的逻辑。该结构对主机性能要求极高,缺乏灵活性,不能满足信息量急剧增长、处理灵活复杂的要求,己逐步在实际工程应用中被淘汰。 (2文件服务器模式精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 13 页,共 48 页14 / 48 随着局域网的问世,引入了文件服务器的概念。在这种结构中,应用程序在客户工作站上运行,文件服务器只提供资源( 数据的集中管理和访问途径,对共享数据资源集中管理,将应用程序分散安排在各个客户工作站上,使用客户机的处理器。对于用户多,数据量大的情况就会产生网络瓶颈,同时维护相当困难。 (3客户
31、服务器模式 (Client/Server。 C/S 模式 C/S模式是 20 世纪 80 年代,随着网络数据库和桌面图形交互窗口及开发技术的发展而逐渐成长起来的一种模式,在这种结构中,网络中的计算机分为两个有机地联系起来的部分: 客户机和服务器。在C/S 结构中,所有客户机与数据库服务器相连,服务器负责数据处理,客户端负责与用户交互,向后台服务器发出请求。对于用户请求,如果客户机能够满足就直接给出结果,否则就交给服务器来处理。因此,这种模式可以合理均衡事务处理,充分保证数据的完整性和一致性。具体来说其特点包括: 分布的处理与集中的数据操作有机结合;服务器对用户是透明的;交互性强;实现安全的数据
32、存取;所提供的软件都是以客户端和服务器方式成套出现;与B/S 模式相比,处理速度较快。但随着 Internet技术的发展,以及企业对信息系统的总体开发、维护、升级和硬件成本的考虑,这种模式逐渐暴露出以下主要问题: 开发成本较高 : 系统移植困难;软件维护复杂、升级工作量大。 (4浏览器 / 服务器模式 (Browser/Server: B/S模式 随着 Intemet席卷全球,以Web技术为基础的B/S 模式逐渐显示其先进性,当今很多基于大型数据库的信息系统都是采用了这种全新的技术模式。2.2.2 B/S模式概述B/S 模式主要由浏览器、 Web服务器、数据库服务器三个层次组成,其本质上是一种
33、特殊的客户 / 服务器结构,只不过它的客户端简化为只讲单一HTML语言的客户软件因而简化了客户端系统的管理和使用,可以使管理和维护集中在服务器端。在这种模式下,客户端使用一个通用的浏览器,代替形形色色的各种应用软件,用户的所有操作都是通过浏览器进行的。Web服务器负责接受HTTP查询、修改等请求,然后根据请求条件到数据库服务器获取相关数据,再将结果翻译成 HTML 和各种页面描述语言,传送回提出请求的浏览器。其结构如图所示。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 14 页,共 48 页15 / 48 图 2.3 B/S 模式结构示意图 B/
34、S模式具有以下优点 : 使用简单 : 用户使用单一的Browser 软件,基本上无需培训即可使用;易于维护: 由于应用程序都放在Web服务器上,软件的开发,升级、维护只在服务器端进行,减轻了开发维护工作量;保护企业投资:B/S模式主要采用标准 TCP/IP. HTTP 协议,可以与企业现有网络很好结合;对客户端硬件要求低:客户机只需要安装Web浏览器软件;信息资源共享程度高: 可实现Internet上资源共享;扩展性好 :B/S 模式既可在 Intranet内使用,也可直接连入 Internet,具有良好的扩展性。 B/S模式把 C/S 的胖客户机结构变为瘦客户机形式,大大减轻了客户端的负担。
35、但这种结构也存在一些明显的问题: 由于 HTTP协议是基于 TCP/IP 协议之上的, HTTP协议中的固定格式是 HTML 文件形式,这种文件网络传输量较大,因而会影响数据传输效率;从管理角度看,这种模式程序代码和数据备份虽然可以在服务器端进行,但客户端每次要求获得数据和反馈的信息都要经过网络才能与数据服务器联系,增加了对网络带宽的要求;HTML毕竟是一种文本格式,难于加密、易于被窃密和截获,从而使信息系统的安全性难以有效保证,网络安全造价往往比较昂贵。一个好的系统运行模式既关系到系统的开发和维护性,也关系到系统的运行状况,所以能不能应用一种新的模式来进行系统开发也就显得非常有意义。B/S
36、模式适合于局域网和广域网,异构性、跨平台能力强,因此,B/S 模式比较适合于开发病室病人信息管理系统。2.2.3 B/S模式的病室病人信息管理系统在病室病人信息管理系统中,基于B/S 结构的系统应用平台,利用Web技术,实现Web服务器与数据库系统的连接,完成客户端对数据的处理与查询,用户可以通过操作简单易学的浏览器来查询处理所需要的各种数据。实现 Web服务器与数据库的连接一般有两种方法: 一种是利用中间件技术在两者之间建立连接和通信,如CGI(通用网关接口 和 API(应用程序编程接口 。Web服务器通过调用CGI 程序实现与 Web浏览器的交互,即CGI 程序接受浏览精选学习资料 - -
37、 - - - - - - - 名师归纳总结 - - - - - - -第 15 页,共 48 页16 / 48 器发给 Web服务器的信息,进行处理后,将相应结果再送回给Web服务器,通过 Web服务器将信息传送给浏览器。但CGI 程序在响应速度和资源利用等方面有较大局限性,客户端每请求一个CGI 程序,服务器端便打开一个进程,当请求的数量较大时容易引起瓶颈现象。开发人员常利用API 编程来扩展服务器功能, API 程序占系统资源少,运行效率较高,但它的编程较CGI 程序更为复杂;另一种是利用Java 小应用程序 (Java Applet通过浏览器访问Web服务器上的数据库,利用了JDBC(J
38、ava Database Connectivity技术,它通过JDBC提供的 API 实现对 Web Server 的访问。由于 Java Applet本身的局限性,目前大多数的应用是基于中间件技术的较多,如ASP, JSP, SERVLET, EJB, PHP等,它们运行于不同的环境,ASP, PHP 效率较高,但受特定的平台限制.JSP, SERVLET, EJB不受平台限制,但效率不高。ASP比较网关、服务器扩展模式以及其他中间件技术有着较大的优点,特别适用于在Windows 平台上开发基于B/S 结构的分布式网络应用系统。2.3 系统开发技术2.3.1 ASP.NET 技术ASP.NE
39、T新模型是基于ASP.NET技术可以创建强大的可编程Web页面;打破了传统应用程序开发和Web开发之间曾经存在的界限;与所有浏览器和移动设备兼容;与所有语言兼容,只要该语言被公共语言运行库支持;页面上允许代码和内容分离;支持庞大的控件集;提供状态管理功能集,用以保存Web页面在不同请求之间的状态。相对于ASP而言,其优越性主要表现在以下几方面:1)ASP.NET是.NET Framework 的一部分,集成了 .NET Framework 的安全性,在公共语言运行库 Common Language Runtime ,CLR )上托管运行,负责管理用.NET库开发的所有应用程序的执行。2)ASP
40、.NET是被编译的,不是被解释的,运行速度提高了、而ASP的解释脚本缺点是:解释执行导致执行速度慢;文件的频繁访问;脚本主机的版本问题;可以开发的语言种类有限。3)ASP.NET支持多种语言,只要是.NET 语言都行, Microsoft中间语言Microsoft Intermediate Language,MSIL )才是 .NET真正的语言。4)ASP.NET支持多种设别和浏览器,ASP.NET后台的浏览器检测功能能够把 HTML 正确地传输到客户端的浏览器,从而提升了兼容性。5)ASP.NET是完全面向对象语言, ASPX页面都是从System.Web.UI.Page对象继承而来, AS
41、PX页面是可重用的对象,只需引用Web应用程序的命名空间精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 16 页,共 48 页17 / 48 即可。6) ASP.NET 包 含 有 自 己 的 可 移 植 配 置 和 安 全 模 型 , IISInternet Information Server)与 windows 用户间的依赖性减小,采用可扩展标记语言Extensible Markup Langusge,XML )作为配置语言,ASP.NET应用程序包含Web.config 配置文件。7)在 VS.NETVisual Studio.NET )环
42、境下ASP.NET是采取控件驱动的机制,服务器识别的HTML控件:从 ASP向 ASP.NET迁移的一个方法是把runat=“server ”添加到 HTML 控件中。如:数据绑定控件sqlDataReader 。8)由于 ASP没有提供任何输出数据为内容的元件,所以在使用ASP撰写数据页面时只能借助ADO的 RecordSet 对象逐笔读取记录,而ASP.NET通过ADO.NET 提供的 DataGrid 等数据库元件可以直接和数据库联系,数据存取速度更快。9)ASP.NET支持应用程序的实时更新。管理员不必关掉网络服务器或者甚至不用停止应用程序的运行就可以更新应用文件。应用程序文件永远不会
43、被加锁,因此甚至在程序运行时文件就可以被覆盖。当文件更新后,系统会温和地转换到新的版本。总之, ASP.NET 是.NET的一部分,是建立动态Web站点的 .NET,它引入了服务器端控件,提供了一种创建Web的简单方式。一般在ASP.NET中,创建 Web窗体应用程序的生命周期和工作流程如下所示:1)页面框架的初始化 Page_Init )阶段该阶段窗体传递回来,传递的数据就是保存在窗体上的信息如:用户输入数据),页面控件的初始化阶段,将触发Page_Init事件。2)用户代码的初始化 Page_Load )阶段该阶段触发 Page_Load事件,通常检查Page.IsPostBack属性,以
44、确定是第一次被加载,还是传递回来的页面,第一次被加载时,可以对控件数据绑定初始化,传递回来的页面时,ASP.NET 来处理。3)有效性验证 控件 Validate方法)阶段该阶段从 Validator控件继承而来的所有服务器控件都有Validator)方法,可以对输入进行验证。4)事件处理 控件事件)阶段该阶段响应窗体控件事件处理程序 5 )清除处理 Page_Unload)阶段该阶段释放资源 如数据库连接,打开的文件等),通常不对Page_Unload方法进行改动。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 17 页,共 48 页18 / 4
45、8 相对于 ASP来说,配置应用程序中ASP.NET的安全性更高。在ASP.NET中身份证有None、Windows 、Forms、Passport等四种方式。ASP.NET是本地Windows帐户,当身份验证省略时,ASP.NET 服务仍然有效。身份认证后,允许或限制用户访问某些页面。相对ASP而言,二者的区别如图所示:图 2.4 ASP.NET 与 ASP 安全性的比较图2.3.2 ASP.NET 的三层架构ASP.NET 结构是一个三层结构模型的系统:即用户界面层UI 层)、业务逻辑层和数据层,它们之间的关系如图所示:图 2.5 ASP.NET 的系统结构模型图UI 层负责与用户交互,接
46、收用户的输入并将服务器端传来的数据呈现给客户,即 ASP.NET页面层,为用户提供对应用程序的访问功能。业务逻辑层负责Web 客户IIS ASP.NET CLR Windows 通 过Web.config验证和授权ASP.NET 角色传 统ASP 验精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 18 页,共 48 页19 / 48 接收浏览器传来的请求并将请求传给数据层,同时将请求处理结果发给浏览器。它由 Web表单、可扩展标记语言 Extensible Markup Language,XML )Web服务和组件服务组成。其中Web表单是 ASP
47、.NET应用程序的核心所在,它是向客户呈现数据和信息的基础,也是响应和处理客户与显示的Web表单监护生成的信息和数据的基础,由于该层直接与数据库关联,同时又为UI 层服务,所以业务逻辑层的设计直接关系到整个系统的成败。数据库层是系统最底层,它存储系统的所有数据,本系统中的系统数据库是使用SQL Server2000 来实现,通过 ADO.NET操纵数据为事务逻辑层提供数据,如存储数据操作结果、返回数据检索结果等等。2.3.3 基于 ADO.NET 访问数据库的原理 ADO.NET 是与 C# 和.NET Framework 一起使用的类集的名称,用于以关系型的、面向表的格式访问数据,包括关系数
48、据库和非关系数据库。ADO.NET已被集成到 .NET Framework,用于任何 .NET 语言,特别是C#。ADO.NET 的目标是:简单地访问关系和非关系数据;统一可扩展标记语言和关系数据的访问;支持Internet上的多层应用程序;与上一代技术相比,它可以扩充类支持更多的数据源。 ADO.NET是一个包含在Microsoft.NET框架中的类库,它可以帮助.NET应用程序访问各种数据源。提供了丰富的类、接口。ADO.NET的另一个创新是引入了数据集相连, ODBC 书开放数据库互联,它提供了数据库系统的公共函数集,提供了数据库统一访问接口;通过OLEDB相连, OLEDB的数据源可以
49、是传统行列式形式的数据库或任何其他存放数据的位置,这些数据源的数据都以表格的形式提供给应用程序,就像它来自数据库一样;直接与SQL Server 相连。这 3 种方式由于应用层次的差异,使得效率由低到高,独立性由高到低。对于相连数据库的数据处理,也有2 中方式,一种是通过DataSet 来隔离异构的数据源,另一种是以流方式即DataReader 方式从数据源读取。ASP.NET 主要通过 ADO.NET 和 DataSet 来完成对数据库的操作。 ADO.NET 和ASP中的 ADO 相对应,它是 ADO 的改进版本。 DataSet 是 ADO.NET 的中心概念。你可以把DataSet 想
50、象成内存中的数据库。正是由于DataSet,才使得程序员精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 19 页,共 48 页20 / 48 在编程时可以屏蔽数据库之间的差异,从而获得一致的编程模型。DataSet 支持多表、表间关系、数据约束等。这些和关系数据库的模型基本一致。过去,数据处理主要依赖两层结构,并且是基于连接的。连接断开,数据就不能再存取。现在数据处理被延伸到三层以上的结构,相应地,程序员需要切换到无连接的应用模型。这样, DataSet Command就在 ADO.NET中扮演了极其重要的角色。它可以取回一个DataSet,并维护