版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 PAGE78 / NUMPAGES78工程硕士专业学位论文(设计) 题 目 基于MVC模式的社区医疗资源库管理系统作 者完成日期 2011年9月 培养单位 四 川 大 学 指导教师 章 毅 指导教师 霍 卫 华 工程领域 软 件 工 程 授予学位日期基于MVC模式的社区医疗资源库管理系统软件工程领域研究生 指导老师 随着Internet的普与,越来越多的医疗系统建立了自己的管理系统,其中社区医疗系统是构成医疗一个重要的组成部分。越来越多的人依赖网络和计算机技术给我们生活带来的便捷。随着社会快速的发展,生活压力增大,很多人忽略了自身的健康状况,往往等生病了才去医院,错过最佳的预防和治疗时机。现
2、在个人的病例还不能统一管理,照成重复检查和医疗的过度,这样对人们身体健康是不益的。在信息化高速发展的今天,建立一个基于社区的医疗管理系统是非常有必要的。不仅可以帮助人们预防和治疗前期的疾病,而且可以以社区为单位进行医疗知识的普与和人们身体健康情况的普查,为国家和相关部门制定相关的政策提供最有利的数据依据。所以,不管是现在,还是面向未来,建立一套完整的社区医疗系统是非常有必要的。先阶段的管理平台主要分为两种模式,一种是C/S即:客户端/服务器,一种是B/S, 即:浏览器/客户端,论文中论述了他们之间的优点和缺点,根据实际情况确定了基于B.S的MVC模式为本系统的设计模式,根据本模式,论述了设计和
3、开发本系统的技术和工具。本文采用现在使用最广泛的MVC模式,MVC 模式分离了表示层和业务层,在实现多层WEB应用系统中具有非常明显的优势. Struts是一个典型的MVC框架,它的出现减轻了开发多层web应用程序的负担,并且提供了复用的软件架构, 本系统是以java为程序开发语言,J2EE为开发平台,设计和开发出社区医疗管理系统。管理系统主要包括:用户管理,数据管理,挂号管理,疾病管理等符合社区医疗系统使用的功能。关键字: 社区医疗,管理系统,MVC模式,J2EE, Struts.MVC-based community health management systemSoftware Eng
4、ineeringGraduate Student:Adviser:With the popularity of the Internet, more and more health care systems have established their own management systems, community health system constitutes an important component of health care. More and more people rely on networks and computer technology to bring the
5、 convenience of our lives. With the rapid development of society, the pressure increases, many people ignore their own health status, are often so sick before going to the hospital, missed the best prevention and treatment. Now the individual cases can not be unified management, according to medical
6、 examination and excessive repetition, this is not on peoples health benefits. In todays rapid development of information technology to create a community-based medical management system is necessary. Not only can help people prevent and treat early disease, but also community-based medical knowledg
7、e with the situation and peoples health survey for the state and relevant departments to develop relevant policies to provide the best data basis. So, whether now or the future, the establishment of a complete set of community health care system is necessary. The first phase of the management platfo
8、rm is divided into two modes, one is C / S is: client / server, one is B / S, namely: the browser / client, the paper discusses the advantages and between them disadvantage, according to actual conditions based on the MVC pattern of BS-based system design model, according to this model, discusses th
9、e system design and development technologies and tools. In this paper, is now the most widely used MVC pattern, MVC pattern separates the presentation layer and business layer, in the realization of multi-WEB application system has obvious advantages. Struts is a typical MVC framework, it appears to
10、 reduce the development of multi- the burden of web applications, and provides a reusable software architecture, the system is based on java as a programming language, J2EE platform for the development, design and develop a community health management system. Management system include: user manageme
11、nt, data management, registration management, disease management, in line with community health care system functions.Keyword: Community health, management systems, MVC pattern, J2EE, Struts.目 录TOC o 1-3 h z uHYPERLINK l _Toc305063700第一章绪论1HYPERLINK l _Toc3050637011.1社区医疗管理系统研究背景 PAGEREF _Toc3050637
12、01 h 5HYPERLINK l _Toc3050637021.1.1 项目背景 PAGEREF _Toc305063702 h 5HYPERLINK l _Toc3050637031.1.2 技术背景 PAGEREF _Toc305063703 h 5HYPERLINK l _Toc3050637051.1.3 何为MVC PAGEREF _Toc305063705 h 7HYPERLINK l _Toc3050637061.2 论文实践基础 PAGEREF _Toc305063706 h 8HYPERLINK l _Toc3050637071.3 系统的研究方法 PAGEREF _Toc
13、305063707 h 8HYPERLINK l _Toc3050637081.4 论文各章节安排 PAGEREF _Toc305063708 h 9HYPERLINK l _Toc305063709第二章 社区医疗管理系统研究现状 PAGEREF _Toc305063709 h 9HYPERLINK l _Toc3050637102.1 课题研究的意义 PAGEREF _Toc305063710 h 9HYPERLINK l _Toc3050637112.2 国外研究现状 PAGEREF _Toc305063711 h 10HYPERLINK l _Toc3050637122.3课题研究目标
14、和工作 PAGEREF _Toc305063712 h 11HYPERLINK l _Toc305063713第三章 社区医疗管理系统开发技术与理论基础 PAGEREF _Toc305063713 h 13HYPERLINK l _Toc3050637143.1C/S平台模式和B/S平台模式 PAGEREF _Toc305063714 h 13HYPERLINK l _Toc3050637163.2 中间件 PAGEREF _Toc305063716 h 15HYPERLINK l _Toc3050637193.3 J2EE PAGEREF _Toc305063719 h 17HYPERLIN
15、K l _Toc3050637263.4Struts框架 PAGEREF _Toc305063726 h 23HYPERLINK l _Toc3050637293.4本章小结 PAGEREF _Toc305063729 h 27HYPERLINK l _Toc305063730第四章社区医疗管理系统分析与设计 PAGEREF _Toc305063730 h 27HYPERLINK l _Toc3050637314.1系统可行性 PAGEREF _Toc305063731 h 27HYPERLINK l _Toc3050637354.2 社区医疗需求分析概述 PAGEREF _Toc305063
16、735 h 28HYPERLINK l _Toc3050637374.3 系统分析与建模 PAGEREF _Toc305063737 h 32HYPERLINK l _Toc305063740第五章基于MVC模式的社区医疗管理系统设计与实施 PAGEREF _Toc305063740 h 37HYPERLINK l _Toc3050637415.1 系统研发的原则 PAGEREF _Toc305063741 h 37HYPERLINK l _Toc3050637425.2 系统开发工具和环境 PAGEREF _Toc305063742 h 38HYPERLINK l _Toc305063743
17、5.1.1 开发工具的选择 PAGEREF _Toc305063743 h 38HYPERLINK l _Toc3050637445.1.2 Web 服务器选择 PAGEREF _Toc305063744 h 38HYPERLINK l _Toc3050637455.3 数据库设计与实现 PAGEREF _Toc305063745 h 40HYPERLINK l _Toc3050637465.3.1 数据表设计 PAGEREF _Toc305063746 h 40HYPERLINK l _Toc3050637475.4 设计思想 PAGEREF _Toc305063747 h 44HYPERL
18、INK l _Toc3050637485.5模块功能分析 PAGEREF _Toc305063748 h 45HYPERLINK l _Toc3050637495.6 性能需求 PAGEREF _Toc305063749 h 54HYPERLINK l _Toc3050637505.7 运行需求 PAGEREF _Toc305063750 h 54HYPERLINK l _Toc305063751第六章平台测试运行 PAGEREF _Toc305063751 h 54HYPERLINK l _Toc3050637526.1 模块测试 PAGEREF _Toc305063752 h 55HYPE
19、RLINK l _Toc3050637536.2 整体测试 PAGEREF _Toc305063753 h 55HYPERLINK l _Toc3050637546.3 性能测试 PAGEREF _Toc305063754 h 57HYPERLINK l _Toc3050637556.4 用户界面测试 PAGEREF _Toc305063755 h 57HYPERLINK l _Toc3050637566.5 测试结论 PAGEREF _Toc305063756 h 57HYPERLINK l _Toc305063757结论 PAGEREF _Toc305063757 h 58HYPERLIN
20、K l _Toc305063758参 考 文 献 PAGEREF _Toc305063758 h 59HYPERLINK l _Toc305063759作者在读期间科研成果简介 PAGEREF _Toc305063759 h 60HYPERLINK l _Toc305063760原 创 性 声 明 PAGEREF _Toc305063760 h 60HYPERLINK l _Toc305063761致 PAGEREF _Toc305063761 h 61HYPERLINK l _Toc305063762附录 PAGEREF _Toc305063762 h 611 绪论课题研究背景项目背景 在网
21、络信息技术的飞速发展的今天,带来了全球信息资源不可逆转的网络化发展趋势,信息技术对人类社会,经济,生活产生了重大影响,这种影响是多层次的,对于医疗也是如此,随着信息化进程的推进,人们生活水平不断的提高,人们对健康的意思越来越强。医疗服务逐渐不断完善,并且朝着网络化、高效率化、系统化发展,使得医疗信息通过互联网快速传播,使病人与医生之间的沟通距离发生了革命性的变革。大医院的医疗管理系统比较先进,能够满足医院和病人的正常要求,但是在社区医疗这一块有很大的缺漏,不能够准确的,客观的反应社区中人们的健康情况,所以不能为国家政策的制定和人们健康提供有力的依据。大病都是由小病引起的,建立这套系统的目的就是
22、为了人们可以时刻看到自己的健康情况,为国家和卫生部提供国民健康情况,为国民提供快捷,安全的医疗服务。技术背景随着java技术日益成熟和快速发展的网络技术,人们广泛的采用了基于J2EE的平台,并且使基于B/S结构的多层Web体系结构得到快速发展,已经成为当今应用的首选。但是,即便这个先进的平台为大多数人认可,可是在开发多层的应用系统中依然缓慢,在该结构体系中,程序的复用程度低,效率低下,而且不能很清晰的了解整个系统的架构等,同时,多层web应用软件需要面对复杂的网络环境,不同的操作平台,多样化的用户需求,灵活的业务模式,复杂的业务流程,众多的组织机构与层次,角色分工等问题,在业务和技术上也是复杂
23、多变的,面对如此多的问题,在开发过程和使用是时候肯定会出现不同的问题,造成维护和修改出现大量的问题,解决这些问题最好的方法就是采用多层次的开发,每一个层次代表不同的组件,组件和组件之间没有紧密的联系,以便开发出高效,实用的系统。而且,我们还要充分考虑到多层结构的特殊性,各层之间需要密切配合才能完成最终功能,又要再使劲开发中尽可能的使各层的开发相对独立,减少各层之间的耦合程度,尽量避免开发人员相互制约。Browse浏览器WEB服务器数据库 HTML图 B/S示意图 J2EE是一个技术平台,融合了很多框架技术,J2EE主要采用MVC开发模式,结合框架完成多层Web应用的开发。在表示层,采用Stru
24、ts框架,Struts主要采用jsp,标签等标准技术,在控制层采用的多是Spring框架,来控制整个系统的流程和跳转。在持久层多用的是Hibernate。 这就是MVC的三个部分,对MVC设计模式的三个部分提供了对应的实现组件,该框架能有助于开发者利用JSP和Servlet的优点更加快速,容易的开发可扩展的Web应用。在MVC模式中,数据库应用的设计是面向关系的,数据库的处理过程并没有真正的实现面向对象,对JDBC进行封装的有ORM,使用ORM对JDBC进行封装后开发者可以随心所欲地使用面向对象的思想来设计和开发数据库。其中Hibernate作为ORM中最好的开源工具,因为免费和功能强大,受到
25、越来越多人的使用。serviceLocator表示层StrutsStruts Action,ActionForm,Jsp,Struts-config.xml,etc.DAO Classes业务层Spring持久层HibernateDataSource/Connection PoolTransactionsBusiness Service ClassesQueryLanguage Support and other Hibernate ServicesDomain Model Business Objects图 Struts-Spring-Hibernate 架构1.1.3 MVC论述 在上世纪
26、七十年代,Trygve在Xerox PARC提出了MVC概念,并应用在Smakktalk系统中,MVC 是Model 、View 、Controller 三个词的缩写,Model:封装领域数据与逻辑, View:查询领域数据并展现给用户,Conctroller:截获用户请求并改变领域数据, 从他们之间的关系上看,View和Controller依赖Model,而Model不依赖View和Controller. Java是Web MVC最早的实践者,开发出Model 2,使用JavaBean,JSP,Servlet分别对应MVC中的三个组成部分,紧接着Structs的出现开始让大众注意到Web M
27、VC,不过真正让Web MVC流行起来的却是Ruby社区的Rails,其大致流程如下图所示:图: MVC结构图 图解:Controller截获Browser请求,查询Model,Model查询Database后把数据返回给Controller,Controller在把数据传递给View,View渲染完成后发送给Brower。 在MVC中,Controler可以改变Model的状态,View可以查询Model的状态,所以说对Model而言,Controller和 View的地位是平等的,不过在Web MVC中,Controller变成了中继者,协调Model和View,如此看来,Web MVC中
28、的Controller等同于MVP中的Presenter。那为什么不叫Web MVP,而称之为Web MVC?这是因为截获请求的是Controller而不是View。论文实践基础 作为一名硕士研究生,笔者在硕士在读期间学习和科研的容,与本论文所关注的医疗主题有着密切的联系,在理论方面,笔者接触并研究了以构建主义为代表的诸多新生理论,CAI设计与制作方面的理论知识以与国家第八次新一轮课程改革的新理念。在实践方面,担任了诸多学校项目,在新课改理念的指导下,多次编写制作管理系统。这些实践经历都未本论文的写作打下了坚实的基础。1.3 系统的研究方法在具体研究方法上,本论文主要采用了文献分析法,案例分析
29、法和行动研究法。1. 文献分析法 在项目开发过程中,笔者收集了有关社区医疗系统建设,医疗数据库技术,课程改革,软件工程方法与理论,J2EE技术方面的大量资料,通过对资料的整理分析,努力把握社区医疗管理系统的设计方向,开发理念,归纳出管理系统的理论基础与设计原则,同时,寻找最可行性的设计模式与开发方案。2. 案例分析法 他山之石,可以攻玉。在论文的准备与撰写期间,笔者参考了很多医疗,剖析了这些系统的技术实现,资源划分,建设原则和系统性能等,总结了本系统建设和使用过程中的一些问题,最后提出了自己的设计与开发方案。3 实践研究法 在学期间,笔者开了很多管理系统,这些都是基于WEB的管理系统,通过对这
30、些系统的研究,确定了基于MVC模式的WEB管理系统。1.4 论文各章节安排 论文主要分为三部分,第一部分为国外社区医疗研究的现状,第二部分介绍基于MVC模式的社区医疗管理系统实现的相关技术理论知识,第三部分为基于MVC模式的社区医疗管理系统的系统分析,设计与实现。第一部分在论文中为第2章,在对信息的收集和研究后,分析了国外社区医疗管理系统的建设现状,主要对系统的类型,技术结构以与常见的问题与不足,并分析了国外社区医疗管理系统研究现状。 第二部分,是在论文第3章中完成。主要介绍了WEB管理系统开发技术与理论基础,主要包括C/S和B/S平台模式,J2EE理论,中间件以与Struts知识等。 第三部
31、分为系统分析,设计与实现,也是论文的核心,这部分分两章完成,即第四章和第五章,论文的第四章主要为系统的需求分析,体系结构分析等,并在面向对象思想的指导下,用UML建模,论文的第5章为系统的设计与实现。根据系统需求,对系统功能,数据库和用户界面进行详细设计,并叙述了系统的实现和测试过程。最后是系统的测试,并总结论文系统完成的主要工作。2 课题研究现状2.1 课题研究的意义从上世纪70年代起,国外发达国家就开始把信息技术就应用到医疗卫生行业,比我国领先将近20年。虽然中国医疗信息化建设的起步比较晚,其间更遇到一些问题甚至危机,但经过医疗卫生界、信息技术人员以与企业界的共同努力, 中国的医疗信息化建
32、设得到了迅速发展。到2006年底,全国二级以上医院基本完成了医院信息系统(Hospital Information System, HIS)系统的建设。随着IT业的飞速发展,医院信息化建设也得到了很大的发展,现在的大型医院都用上了医院信息管理系统(HIS) 。医院信息系统的应用促进了医院的整体现代化建设, 提高了医疗服务水平。 但是目前的社区医疗管理系统中的一些问题并没有得到根本解决,例如社区医院和大型医院之间不能共用病人的病例,会造出医疗的浪费。在社区医院能看好的病,就不用去大医院看。预约制度不能够完全的发挥作用等问题。基于MVC模式的社区医疗管理系统正是为解决社区医疗的管理信息系统。对患者
33、快速实施急诊、保证患者安全、切实提高医疗质量、减少医疗差错将发挥巨大的作用。2.2 国外研究现状 社区医疗(primary care)是指一般的医疗治疗,包括医疗保健,在社区中提供优质和方便的快速医疗环境。社区医疗为提供整合的便利的医疗保健服务;医生的责任是满足绝大部分个人的医疗需求,与病人保持长久的关系,在家庭和社区的具体背景下工作。 随着社区在人们生活中的必要性的加强,与人的生活息息相关的社会保障与社会服务功能在社区层面凸现,并日益成为了社区的主要的社会功能,它不但能满足人们日益增长的物质文化需求,同时还能通过社区功能的拓展,进而来实现居民多层次的精神需求。 随着社会保障和社会服务功能的凸
34、现,尤其是随着人们对健康、对自身生活质量提高的关注,越来越多地与人的健康和生活质量提高有关的需求逐渐延伸并促成了社区主要功能的转化和发展。社区服务中的医疗卫生服务就是在这样的情况下,逐渐成为了政府和社区居民关注的重点。 那么何谓医疗需求,社区医疗需求的增长对社区功能的发挥和拓展具有哪些重要的作用? 医疗需居民愿意且有能力购买的医疗服务需要量。医疗需求主要是由居民的经济状况即支付能力决定的。医疗需求根据不同的划分方法,可以将其划分为不同的种类,按其是个体行为还是群体行为分为个体医疗需求与群体医疗需求;按其不同容划为门诊医疗需求与住院医疗需求。为了更好的理解医疗需求,需要对医疗需求和医疗需要做一区
35、分: 医疗需要是指从消费者的健康状况出发,在不考虑实际支付能力的情况下,由消费者个体或医学专业人员分析判断是否应该获得医疗服务以与获得医疗服务的数量。因而其不同主要有以下两点:第一,医疗需居民有支付能力的医疗服务需要; 第二,医疗服务需要是由居民的健康状况决定的。 从上面两点看,我们在分析医疗需求时就必须注意:没有医疗需要的医疗服务需对卫生资源的浪费;医疗服务需要未能转化为医疗服务需求,要进行原因分析。 笔者之所以将二者做一区别,主要是基于医疗需求发展的角度而言的,本文中主要就医疗需求的发展为新的医学模式的推广创建了基础和前提,而逐渐由医疗需要转化为现实需求来进一步阐述的,因此,在这里医疗需求
36、的发展主要体现的是医疗需求的一种动态状态,即医疗需要不断地转化为可量化和能够购买的服务。 除此以外,社区医疗需求的发展还表现在医疗需求的多样化与多层次提供等方面。如,随着社会压力的增大,越来越多的人们的心理健康处于亚健康状态中,因此,随着心理需求的增多,社区医疗需求不仅仅关注人们的身体健康,更要注重人的心理上的健康和发展,实现人的和谐发展。 总之,医疗需求的动态发展,尤其是随着人们物质生活水平的提高,社区居民的有效医疗需求逐渐增加,这种有效需求的增加,进一步促进了社区医疗事业的发展,因此,医疗需求的增加和拓展,在一定程度上实现社区功能的有效转化和量化,进而促进社区功能的有效拓展。 在发达国家,
37、社区医疗是病人首先求医之处,是以人群为基础的医疗服务,也是提供持续医疗服务之处,包括治疗一些慢性病、老年病人,也即需家庭护理和姑息疗法的病人。在不同国家里,社区医疗也往往由不同医疗部门实施。目前,越来越多的国家大力发展社区医疗系统,社区医疗在过去的一段时间,包含医疗门户系统,社区居民,医务人员,医疗管理水平方面得到的很大的提升,很多国家把社区医疗当做防止流行性病得第一道防线,也是最重要的防线。并且通过社区医疗可以得到最真是的情况,为国家的发展和国家制定政策提供了最有利的保障。2.3课题研究目标和工作2.3.1.课题研究目标本课题的研究目标是建立一个社区医疗管理系统,是针对医疗资源信息的管理,包
38、括信息的输入,输出,查询,修改,处理等,以便让医生,患者和国家能够与时查询自己或者患者的信息,为社会提供一个安全和谐的环境,实现社区医疗系统的计算机化,实现医疗信息的共享;提高工作效率、为患者,医生,国家提供更便捷的服务。2.3.2.课题主要研究容基于MVC模式社区医疗系统开发主要包括以下容:可行性研究可行性研究的任务是来确定社区医疗系统是否有必要开发,可行性研究从下几个方面:技术可行性 使用现在的技术能否实现该系统。经济可行性 这个系统的经济效益是否能超过它的开发成本。操作可行性 用户操作这个系统是否能通行。需求分析需求分析的主要任务是确定社区医疗系统的综合要求,分析该系统的数据要求,设计出
39、系统的详细逻辑模型,通过数据流图,实体-联系图(ER图)、状态转换图、数据字典和主要的处理算法描述这个逻辑模型,在整个系统绘制数据流程图,数据流程图是以接收到的数据和回报分析,数据流是使用来描述系统的逻辑模型描述的系统中的数据流和数据处理,它可以被用来作为用户访问该的信息和通信交换,软件的设计也可以作为一个起点,根据系统要求,工具进行数据交换,协助详细的系统设计,数据字典也应该在这里提到,信息的收集的数据,即数据流图,包含了所有元素的定义,数据流图和数据字典共同构成系统的逻辑模型,它们共同构成了系统规的集合。在绘制数据流图,以表达数据处理数据处理情况,需要采取的数据流图的层次结构,根据系统逐渐
40、分解结构,分层数据流图的水平,以反映这种结构性的关系,可以很容易地表达和理解整个系统。总体设计总体设计的工作是初步划分出组成社区医疗系统的物理程序、文件、数据库、和相关的文档等,总体设计还有另外一个任务是设计社区医疗系统的结构,目的就是确定该系统有那些模块组成,以与模块与模块之间是怎么样联系的。详细设计详细设计阶段的根本目的就是确定如何实现社区医疗系统,通过这个阶段的设计确定该系统的精确地描述,这个阶段是为后面的编码打基础,在这个阶段要设计出系统界面和数据库。编码和测试编码就是把系统设计的结果翻译成用某种程序设计语言书写的程序,编码实际是对系统设计的具体化,选择本系统计划采用Java语言进行编
41、码。编码完成进行测试,测试是为了发现程序中的错误,并进行修改。3 WEB管理系统开发技术与理论基础一般分为4种类型:主机终端模式,文件服务器模式,客户机/服务器(C / S客户机/服务器)和浏览器/服务器(浏览器/服务器,简所谓的B / S)模式的管理系统平台。客户端模式由于硬件选择有限,应用领域领域变得越来越小,随着人们的操作和数据互动的要求进一步的增加,大量的数据处理是网络发展的瓶颈,特别是不能够满足用户在互联网上的要求,所以,现代管理系统开发平台模式主要考虑C/S模式和B/S模式.3.1C/S平台模式和B/S平台模式C / S的开发平台模型是一个分布式系统的模型,它描述了在客户端和服务器
42、之间的多个处理器分配的数据处理和制造过程中,这里是指两个应用程序(软件)的沟通。使用电脑是一台电脑“使用者”(用户),而不是“客户”(客户端)。但在许多国外的技术介绍文章中,也往往会遇到客户端程序的机器称为客户端(在这种情况下,还可以翻译为“客户”的客户端),服务器程序运行的机器称为服务器。所以有时根据的背景下,确定客户端和服务器是指一个软件.C / S开发平台模型的最大优势是,它是一个分布式的系统结构,构成一个网络系统的多个处理器组成,可以提供更好的使用。在这种制度下,轻松地添加服务器或服务器是透明的,不影响其他地区的系统.C / S平台模式的缺点是高昂的维护成本和前期投资。首先,采用C /
43、 S平台模式,必须要选择适当的数据库平台,以实现真正的“一统天下”的数据库中的数据。C/S模式只适用于局域网(现在很多CRM软件也可适用于外网)。而随着互联网的飞速发展,移动办公和分布式办公越来越普与,这需要我们的系统具有扩展性。这种方式远程访问需要专门的技术,同时要对系统进行专门的设计来处理分布式的数据。 客户端需要安装专用的客户端软件。首先涉与到安装的工作量,其次任何一台电脑出问题,如病毒、硬件损坏,都需要进行安装或维护。特别是有很多分部或专卖店的情况,不是工作量的问题,而是路程的问题。还有,系统软件升级时,每一台客户机需要重新安装,其维护和升级成本非常高。对客户端的操作系统一般也会有限制
44、。不适用于微软新的操作系统等等,Linux、Unix等。同时网络管理人员不应该仅在服务器和客户端的维护管理,维护和管理,这就需要较高的投资和复杂的技术支持,维护成本高,维护需要大量的人力财力,传统C / S的统一平台模式和不同的操作系统需要和开发不同版本的软件,作为得分的替代产品,价格高和低效率的结果是不适合的工作。在JAVA这样的跨平台语言出现后,B / S对C / S的产生了影响,形成的威胁和挑战。3.1.2 B/S平台模式 B / S(浏览器/服务器)开发平台模式,是一种新的软件架构,也是未来软件发展的必然趋势,相比以前的C/ S软件架构,是一个质的飞跃。只要在电脑上安装一个浏览器,如网
45、景或微软的IE,客户端不需要装任何东西,就可以通过浏览器和服务器端进行很好的数据交互,数据库只需要在服务器端。B/S平台模式中,在第一层是客户端。在第二层的应用服务器,在一个或多个服务器中,该层具有良好的可扩展性,可应用于需要增加服务器的数量上,在第三层是数据层,数据库系统和持久层。如图:客户端浏览器Web层业务层数据访问层系统配置数据库客户端浏览器客户端浏览器 图:B/S模型 B/S开发平台模式设计的软件系统,明显解决了C/S开发平台模式维护成本高的缺点,对整个软件系统的维护只需要维护好服务器端就可以了,所以的客户端只是浏览器,根本不需要做任何的维护,如果是异地,只需要把服务器连接专网即可,
46、实现远程维护,升级和共享,这样客户机越来越小,而服务器越来越大,这也是以后信息化发展的主流方向。 随着软件应用的快速扩,对系统维护人才的需求很有可能成为企业快速扩和发展的制约瓶颈。如果企业销售店面有数百家,计算机专业人才的需求将是为企业的最大挑战之一。尽管人力成本不说,一个企业要获得这么多的人才,并留住他们是不可能的。因此,采用C / S结构软件将限制企业的未来发展。此外,大部分的软件C / S结构通过ODBC直接连接到数据库,安全差不说,用户的数量是有限的。每个连接到数据库的用户将保持一个到ODBC的连接,将始终占据着一个中央服务器资源,中央服务器上的要求非常高,使用户大大限制了扩。虽然B
47、/ S软件结构是不同的的,所有用户都通过,通过一个JDBC连接池是连接到数据库,用户没有保持到数据库的连接,用户数基本上是无限的。从上面的分析,我们可以看到,B / S结构与C / S结构软件无法比拟的优势的管理软件。从国外的发展趋势,也证明了这一点。目前,国外大型企业管理软件,无论是B / S结构,要么是经历从C / S到B / S结构。从事B / S结构软件的趋势发展,从国许多软件公司的B / S结构的大型管理软件将在未来几年中占据主导地位的管理软件。此外,的C / S,B / S结构作为系统的体系结构是一个理论上的概念,系统设计和系统集成,具有重要的理论和实践意义,在较小的系统,其理论的
48、概念是比较模糊的,系统可能存在在C / S,B / S的嵌套结构。这种结构适用于系统开发。3.2 中间件中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源。中间件位于客户机/服务器的操作系统之上,管理计算机资源和网络通讯。是连接两个独立应用程序或独立系统的软件。相连接的系统,即使它们具有不同的接口,但通过中间件相互之间仍能交换信息。执行中间件的一个关键途径是信息传递。通过中间件,应用程序可以工作于多平台或 OS 环境。在分别异构环境中,一般存在多种硬件系统平台(如:PC, 工作站,小型机等),在这些硬件平台上又存在各种各样的系统软件(如OS DBMS,语言
49、编译器等), 以与风格不同的各种用户界面,如何把这些系统集成起来并开发新的应用是一个非常困难的问题。3.2.1了解中间件的概念 为了解决非均匀分布的问题,人们提出了中间件(Middleware)的概念。中间件是一种独立的系统软件或服务程序,分布式应用软件由不同的技术之间共享资源,中间件。位于(硬件和操作系统)和普遍服务的应用程序之间的中间件平台。中间件(Middleware)是一大类,属于可重用的软件类的软件。顾名思义,中间件在操作系统软件和用户应用软件的中间。中间件在操作系统,网络和数据库,应用软件层,主要功能是提供一个简化的软件运行和开发环境,帮助用户灵活,高效地开发和集成复杂的软件app
50、lications.Among许多中间件定义普遍接受的是IDC表示:中间件是一种独立的系统软件或者服务程序,分布式软件,应用软件共享资源,从不同的技术,中间件位于客户机服务器的操作系统,管理计算机资源和网络通信在IDC的中间件定义,中间件是一种软件,而不是一个软件,不仅实现了互连,中间件,还要实现应用程序之间的的互操作性;中间件是基于分布式处理的软件,最突出的特点是网络通讯功能。3.2.2中间件特点与优势 传统的客户机/服务器模型是两层的结构,通常用来做客户端(运行客户端程序)一台个人电脑,服务器后端数据库存储系统,应用程序可以直接连接到客户端,没有其他的逻辑。业务逻辑一般是在前台应用程序中,
51、程序员根据客户的业务客户端定制,定制的方案是不具有普遍性。或业务逻辑存在触发(触发)的方式在后端数据库。这种方法有一个很大的缺点是,一旦客户的业务逻辑改变,它会导致应用程序的修改和背景触发的变化,所有程序模块都重新修改,编译,连接的工作是相当大的。此外,由于这种结构的用户界面和业务逻辑和数据源结合在一起,客户端会消耗大量的资源,客户端是一个很大的负担。 为了克服这些缺陷的应用传统的客户机/服务器模型的系统出现一个新的结构,这是三(N层)客户/服务器模式的影响。三层客户机/服务器体系结构建立一个分裂型应用。分离系统中的应用,划分为逻辑元件,分为三个层次: 用户服务层:提供信息浏览,服务导向。主要
52、是为了实现用户界面,并确保用户友好和团结。 业务流程层:实现客户的整个业务逻辑。 数据服务层:数据定义,存储,备份,检索等功能,主要的数据库系统实现。 这是由三个层次的应用。利用这个模型,系统的要求,明确界定的服务,如交易服务,名称服务,可分为。这些服务将在组件的形式实现,该系统的一个组成部分,可以实现一个或多个服务,这些服务的物理封装。根据系统的功能,性能和其他方面的需求,网络管理员可以上灵活的部署这些组件。和灵活性根据业务的变化对这些服务组件进行修改,在不影响其他组件,从而降低了维修成本。 此外,这些元件应普与,基于一个标准的接口,这样他们就可以在其他应用程序中重复使用,可以使用他们提供的
53、应用程序接口调用组件,完成所需的操作。中间件的优势:1,中间件是一种独立的系统软件平台,为网络应用软件提供综合的服务和完整的计算环境,借助这种软件使得网络应用能够实现集成,达到业务的协同,实现业务的灵活性易于进行系统维护需要注意的是基础软件(中间件)自我发展,要付出很搞的成本,除了每年的维护自我发展的基础(中间件)软件的支出需要原始开发成本的15-25,每一个应用程序的维护费用也需要原项目的总成本约10-20。在一般情况下,购买标准商业中间件,每年只需交纳价格的产品15-20的维护费,当然,中间产品的具体价格根据产品质量和制造商和质量:基于对企业自我建造的基础(中间件)软件平台,应用系统每增加
54、一个新的模块,将相应基趾(中间件)软件。虽然中间件的接口标准是明确和规。标准中间件的规化模块可以有效地保证了质量,降低应用系统和系统维护费用。3.3 J2EE3.3.1 J2EE的概述 J2EE,即Java2平台企业版,是sun公司为企业级开发推出的标准,java平台共分为三个主要版本JavaEE, JavaSE和JavaME sun公司在1998年发表1.2版本的时候,使用了新名称Java2Platform,即现在的Java2平台,分为并分为标准版(StandardEdition,J2SE),企业版(EnterpriseEdition,J2EE),微型版(MicroEdition,J2ME)
55、。J2EE便由此诞生。2005年6月,JavaOne大会召开,SUN公司公开JavaSE6。此时,Java的各种版本已经更名以取消其中的数字2:J2EE更名为JavaEE,J2SE更名为JavaSE,J2ME更名为Java ME。 Java2平台包括标准版(J2SE)、企业版(J2EE)和微缩版(J2ME)三个版本:他们的围是:J2SE包含于J2EE中,J2ME包含了J2SE的核心类,但新添加了一些专有类。 J2EE是一个开发平台,或者说是一种技术架构,包含了许多组件,并规了程序的开发和部署,进而提高系统的可移植性,安全性和重复使用。 J2EE主由SUN等与上下游厂商之间共同协定并以企业与企业
56、之间的运算为导向的JAVA开发环境。J2EE架构定义了如Web Component、E Component等各类不同的组件,这些组件可以循环使用(reuse);而这些开发完成的组件可以和外购组件或其他组件,进一步组装成不同的系统。 对于开发人员而言,他们能将更多的精力投入到应用系统的商业逻辑与架构设计中,属于底层的程序编写,则可和不同的开发平台搭配,让应用系统的整个开发效率大大提升图:J2EE结构分布从整体上讲,J2EE是Java技术在实际应用过程中不断适应不断优化的产物,它是该技术在企业级应用中默认的工业标准(Sun公司出于其自身利益的考虑,至今没有将Java与其相关技术纳入标准化组织的体系
57、)。在当今Browser/Server架构当道下,为解决Client/Server模式的弊病,也为了Java技术开发服务器端的应用提供独立,可移植的,多拥护的,安全的的企业级平台,Sun推出了J2EE,它简化了企业应用的开发、管理和部署。J2EE不是一个现成的产品,而是一种默认的标准规,各个平台开发商按照J2EE规分别开发了不同的J2EE应用服务器,它是J2EE企业级应用的部署平台。由于它们都遵循了J2EE规,因此,使用J2EE技术开发的企业级应用可以部署在各种J2EE应用服务器上。 J2EE组成了一个完整企业级应用的不同部分纳入不同的容器(Container),每个容器中都包含若干组件(这些
58、组件是需要部署在相应容器中的),同时各种组件都能使用各种J2EE Service/API。J2EE容器包括: Web容器 E容器 Applet容器 Application Client容器通过以上的四个容器,J2EE能够灵活地实现前面描述的企业级应用的架构。 在J2EE的各种服务和API中,包括JDBC、JCA、JAX-RPC、JAXR和、SAAJ几种,前两种用于企业资源(各种企业信息系统和数据库等)的连接,后面三种是实现Web Services和Web Services连接的基本支持。3.3.2 J2EE的优势J2EE先在被广泛的使用在管理系统和大型的网络应用系统上,之所以被广泛是使用,一定
59、有其优势。J2EE为搭建具有可伸缩性、灵活性、易维护性的企业信息系统提供了良好的制,它的优势体现在以下方面:1大型厂商的支持 在世界围,有很多开源组织支持J2EE,包括中间件和底层数据库,为J2EE提供丰富的选择余地。同时,包含Oracle,谷歌等一些大厂商也对J2EE大力的支持,为J2EE的发展提供了最有力的保障。正因为J2EE可以跨平台的运行,所以没有什么限制,可以在任何系统和环境中运行,所以大型的厂商愿意提供支持。2.开发高效 因为有大量的厂商和开源组织支持,是J2EE选择软件和技术的时候有大量的选择,开发者可以选择最适合这个系统的模式和方法,大大的提高了开发效率,同时,编写一段代码,可
60、以形成一个组件,别的地方要实现一样的效果时,就可以用一样的组件,这样大大的节省了开发的时间。开发完成以后,要进行维护和扩展,只需在服务器端进行代码的重构即可,所以使用J2EE可以高效,快速的开发出相应的系统。3.3.4 J2EE核心技术JAVA最初是在浏览器和客户端机器。当时,很多人质疑它是否适合于服务器端的开发。现在,第三方支持增加Java2平台企业版(J2EE),JAVA是被广泛接受的开发企业的首选服务器平台的解决方案。如图:J2EE结构 图: J2EE结构1.JDBC 由于应用程序和数据库进行信息交互越来越普遍。因此,一种编程languageIntroduction数据库开发能力,决定了
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 卡通插画黑板教师教育教学模板模板
- 2025年生态农业认证五年发展路径报告
- 2025年佛山市南海区狮山加立幼儿园招聘备考题库及一套完整答案详解
- 2025年保定华医中医医院招聘15人备考题库完整参考答案详解
- 湖南时空信息安全检测服务有限公司2025年面向社会公开招聘备考题库附答案详解
- 松桃群希高级中学2026年招聘高中教师备考题库(数学物理化学语文英语)及参考答案详解一套
- 2025年江西省建工集团有限责任公司所属企业招聘备考题库及答案详解一套
- 2025年城市共享单车补贴政策分析报告
- 2025年成都市泡桐树中学教师招聘备考题库完整答案详解
- 2025年上海舞台技术研究所(上海文广演艺剧院管理事务中心)公开招聘工作人员备考题库及答案详解1套
- 2025年安全管理员岗位招聘面试参考题库及参考答案
- 2025山西太原市面向劳务派遣人员招聘2人笔试历年备考题库附带答案详解试卷3套
- 道路清扫保洁服务投标方案
- 应对海关缉私警察面试常见问题与答题技巧
- 光伏运维合同
- 水电建设工程质量监督检查大纲
- 老年病科护理组长岗位竞聘
- 2025-2030中国碘化铑行业需求潜力及产销规模预测报告
- 食品安全许可证管理制度
- 疫苗与冷链管理课件
- 2025年高级(三级)焊接设备操作工职业技能鉴定《理论知识》考试真题(后附专业解析)
评论
0/150
提交评论