1、基于JSP的医院网上预约挂号系统本科毕业论文设计40论文41(此文档为word格式,下载后您可任意编辑修改!)本科毕业设计(论文)题目:基于JSP的医院网上预约挂号系统院 (系): 计算机科学与工程学院 专 业: 计算机科学与技术专业 基于JSP的医院网上预约挂号系统摘 要Internet互联网技术的快速发展的同时也带来了社会各个行业的发展。它的发展已经深入到社会的各个角落。作为社会发展的前沿技术,各行各业只要对其合理的进行运用,必将会带来巨大的便捷。成功的运用Internet将为医疗事业带来无限便利。在传统的医院挂号过程中,信息处理停留在手工方式,劳动强度大且工作效率低,医师护士和管理人员的
2、大量时间都消耗在事务性工作上,病人排队等候时间长,这些影响了医疗的秩序,也延误了患者的病情。而本论文的探索研究方向则为医院挂号网站的开发与实现。本系统采用的是基于广域网的BS结构平台,比CS有更强的适用范围,具有更加生动和丰富的表现方式与用户交流。系统的设计框架采用的是已经发展成熟、安全的SSH(Struts+Spring+Hibernate)技术框架,使系统实施更为方便和安全。网页采用的是JSP技术,它拥有卓越的系统可移植性,同时它与流行的XML等技术也能良好整合,加上MYSQL数据库强大的后台数据支持,奠定了JSP技术在网络应用系统开发中的关键地位。它使我们的网页更加生动、具有表现力。这次
3、毕业设计开发了医院预约挂号系统,该系统是专为解决广大患者挂号难这个问题。通过本网站患者可以有针对性的快速的找到符合自身的需求的医师进行预约挂号。关键词:医院, 挂号, SSH, JSPHospital registration and online booking system based on JSPAbstractWith rapid development of Internet technology,which also brought the development of all sectors of society。Its development the traditional p
4、rocess, the information processing remain in the manual, labor-intensive and low efficiency, doctors、nurses and managers line for a long time around the course, and the impact of the order of a medical, but also delayed patients. The system is based on the wide area network of the B S structure of t
5、he platform, than the C S the design of the framework is already mature and secure SSH (Struts + Spring + Hibernate) technology framework, allowing the system to the implementation of more convenient and secure. JSP pages using the technology, it be a good integration, coupled with a strong backgrou
6、nd MYSQL database data support, laid the JSP technology applications in the network development key position. It makes our website more lively and with expression.Design and development of the graduate appointment to the system, the system is designed to address the vast number of registered patient
7、s with the problem difficult. Patients through this website can be found quickly targeted in line with the needs of their own to make appointments for registered physicians.Key words:, StrutsSpringHibernate,JSP.1 绪 论1.1 课题背景及研究意义随着经济与科学技术的高速发展,信息化的进程不断加快。随着计算机性能不断提高,价格不断下降,计算机已在医院医疗,教学,科研,管理的各个方面得到越
8、来越广泛的应用。然而,我国还有部分医院的信息处理停留在手工方式,劳动强度大且工作效率低,医师护士和管理人员的大量时间都消耗在事务性工作上,病人排队等候时间长,辗转过程多,影响了医疗的秩序。计算机化的医院信息系统已成为现代化医院运营必不可少的基础设施与技术支撑环境。门诊挂号系统是整个医院管理信息系统的第一个窗口,是病人到医院就诊要做的第一项工作。它用于收集病人的信息,协调科室医生管理,控制各科室的流量等等。医院网上预约挂号系统是一种基于互联网的新型挂号系统,是卫生信息化建设的基础的项目之一。利用该预约挂号系统,用户就可以在网上预约医院的专家、专科号,而无须再受排队之苦。它能更好的改善就医环境,简
9、化就医环节,节约就医时间,真正体现了以病人为中心,一切从方便患者出发,符合当今医院人性化温馨服务的理念。目前,门诊一直是困扰医院提高服务质量的一个复杂环节,特别是医疗水平高、门诊量大的医院,而造成门诊质量难以提高的因素主要有两方面:一方面集中式挂号(现在流行的分层挂号只是相对而言一个范围较小的集中式挂号),就诊人员流量不均、具有不确定性,有明显的就诊高峰和低谷(表现在整个医院不同门诊时间段及同科室的不同时间段)。高峰期病人挂号排队长,就诊时间长,医生熟人插号现象,环境拥挤混乱,医生问诊时间短、不仔细、态度差。而低谷期,医生无病人看、溜号,医院资源浪费。另一方面专家号(特别是名专家号)难挂,出现
10、倒号、炒号现象,严重损害病人利益,影响到医院的声誉。而采用网上预约挂号,可有效的解决这一现象,还通过有效的身份验证,杜绝倒、炒专家号的现象,提高医院门诊服务质量,取得良好的社会效益和经济效益。此外,病人到医院就诊前对医院的相关信息了解不多,对所要挂的专科医生的情况又不太了解,只能凭经验和印象进行选择,具有较大的盲目性。而当医院开通网上挂号预约服务以后,求医者只需坐在家中,轻点儿下鼠标,就可以挂上医院专家门诊号,可以做到“足不出户选医生”。网上预约正悄然改变着都市求医者的看病观念。拥有相对固定的个人医生和习惯,预约看病,将不再遥远,所以应用必将越来越广泛。1.2 国内外研究现状随着互联网络的迅猛
11、发展,Internet用户已呈几何级数增长,目前已经有很多医院投入使用网上挂号系统。据了解,预约挂号在国外颇为普及。在西方国家,病人看病都需要事先进行预约。随着预约挂号的深入推广,国内越来越多的医院也意识到预约服务在节约看病时间、分流患者、减轻医院压力上的作用。据了解,尽管存在很多困难,但全国各地的医院在尝试预约挂号的实践中还是提供了很多有益的做法。广东省人民医院早在2004年就采取了一套相对完整的预约挂号体系,其三种预约方式,按照受欢迎程度排名依此为:电话、现场、网络,分别占到了预约挂号中 50%、40%、10%。在福建,全省范围内拨打12320海西健康热线电话,即可预约到福建省立医院等5家
12、医院的专家号,只按市话费标准收费,不收取任何信息服务费。在北京,解放军总医院(三一医院)于前不久专门开通了夜间门诊电话预约挂号66936619(不收预约费),可以毫不费力地约到各科室的专家,开通不久即见成效,目前已经成功分流了约13的患者。此外医院还开通手机挂号功能,患者只需要发送短信就可以进行预约挂号。患者根据系统提示,输入姓名、性别、年龄、住址、付费方式、就诊卡号、预约时间、预约科室、预约项目、预约医师等内容,系统就会根据各门诊科室提供的具体情况,安排给患者合适的就诊排号位或挂号建议。在患者就诊前一天、就诊当天、就诊前一小时、就诊前5分钟,系统还会以短信的形式多次通知患者。患者如果有事无法
13、就诊,通过发送短信,经过医师或护士同意,还可二次预约。1.3本课题研究内容本课题的主要研究的内容是运用JSP语言、TOMCAT服务器和SQL数据库实现管理员对系统的管理、用户预约挂号等功能的管理和实现,包括前台模块和后台管理模块。此系统采用技术框架为SSH框架(Spring + Struts + Hibernate)1.3.1功能模块通过对用户需求的分析,本系统的功能主要包括两块,前台用户操作及后台管理。各个功能的具体描述如下:前台用户操作界面功能主要有:专家查询、用户信息修改、密码修改等功能设置。各个模块的功能简述如下:专家查询通过这个功能可以浏览到每个专家的简介及所属科室,从而选择专家进行
14、具体预约。用户信息修改可以对自己的信息进行修改,如:姓名、密码提示问题及答案、性别、出生年月、身份证号、E-mail地址等信息。密码修改输入一遍旧密码,两遍新密码即可成功修改密码。系统管理管理员进行对科室信息、医师信息的添加、删除与修改操作,也可以对用户进行删除操作。1.3.2后台数据库使用Hibernate驱动程序访问数据库,数据库由五张表组成:管理员信息表、用户信息表、医生表、科室表以及提供预约的时间表。数据库主要记录用户信息、医生信息以及预约挂号的信息,并且预约记录也保存到数据库中。2 开发环境及开发技术医院网上挂号系统是以SSH框架为主要的技术框架,以JSP技术为客户端的主要显示技术,
15、以MySQL数据库作为系统的数据存储单元。下面我们来介绍下本系统的开发环境以及开发中所用到的相关技术。2.1 BS模型 BS结构,即BrowserServer(浏览器服务器)结构,是随着Internet技术的兴起,对CS结构的一种变化或者说是改进的结构。用户界面完全通过浏览器实现,一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现,形成三层结构,是一种全新的软件系统构造技术。BS模式最大特点是:用户可以通过WWW例览器去访问Internet上的文本、数据、图像、动画、视频点播和声音信息,这些信息都是由许许多多的Web服务器产生的,而每一个Web服务器又可以通过各种方式与数据库服务器连接,
16、大量的数据实际存放在数据库服务器中。客户端除了WWW创览器,一般无须任何用户程序,只需从Web服务器上下载程序到本地来执行,在下载过程中若遇到与数据库有关的指令,由Web服务器交给数据库服务器来解释执行,并返回给Web服务器,Web服务器又返回给用户。在这种结构中,将许许多多的网连接到一块,形成一个巨大的网,即全球网。BS模型结构图如图2.1所示:图2.1 BS模型结构图从上图可见 这种结构的一个重要的特点是,用户可以完全不需要安装客户端软件,当然也不需要担心任何软件升级和不兼容等任何客户端所遇到的问题。相比之下,BS模型的优点显而易见,更适合这个网站的构建,有利于网站的维护和扩充。2.2 J
17、SP技术发展背景Web技术的迅猛发展正推动Internet上信息服务类的进步。WWW服务的基础是HTML语言。这个系统模块中用到的JSP技术是在HTML语言的基础上使用脚本语言对网页的对象模型进行编程。JSP全称JavaServerPages,它是由Sun Microsystems公司提出、许多公司参与建立的一种动态网页技术标准。它诞生在 1999年6月1日。目前国内外已经在广泛地使用JSP。随着JAVA语言得到普及,越来越多的公司开始关注JSP的前景。传统的动态网页制作包括CGI、ASP、JSP三种,而JSP具有明显的优势。使用CGI-BINJ接口是一个最早的动态WEB页面问题的解决方案。缺
18、点,CGI程序必须从CGI接口读入一长串的字符串,再从字符串中取得所需要的数据并加以处理。过程十分繁琐。另一个缺点,除了Perl是解释语言外,其他都是编译式的语言。每次修改后,都必须重新编译一次,这给开发人员带来麻烦,增加了工作量。ASP和JSP都能取代CGI使网站建设和发展变得简单快捷。尽管JSP技术和ASP在许多方面都有相似的,但仍然存在很多不同之处,其中最本质上的区别在于:两者是来源于不同的技术规范组织,其实现的基础,WEB服务器平台要求不相同。 作为Java平台的一部分,JSP拥有Java编程语言“一次编写,各处运行”的特点。一次写入,之后,可以运行在任何具有符合Java TM语法结构
19、的环境。取代过去单一平台开发。ASP主要工作环境是微软的IIS应用程序结构,又因Activex对象具有平台特性,所以ASP技术不能很容易地实现在跨平台的WEB服务器的工作。 从开发人员的角度来看其区别在于:ASP仅支持组件对象模型COM,而JSP技术提供的组件都是基于JavaBeans TM技术或JSP标签库。 JSP标签可扩充性。JSP技术能够使用开发者扩展JSP标签,JSP开发者能定制标签库,减少对脚本语言的依赖。 生成可重用的组件。JSP基于组件的技术方法加速了总体开发过程。 JSP组件(JavaBeans,或定制的JSP标签)是跨平台可重用的。JavaBeans组件可以访问数据库,并能
20、以分布式系统模式工作于UNIX和WINDOWS平台。 易于维护性。 基于JSP技术的应用程序比基于ASP的应用程序易于维护和管理。JSP突出的组件技术使修改内容而不影响逻辑或修改逻辑而不影响内容变得很容易实现。如上的比较不难看出,JSP技术编写的程序运用要更加灵活,可扩展性更强。2.3 SSH框架即为Struts + Spring + Hibernate技术,典型的MVC三层结构,分为表现层、中间层(业务逻辑层)和数据服务层。三层体系将业务规则、数据访问及合法性校验等工作放在中间层处理。客户端不直接与数据库交互,而是通过组件与中间层建立连接,再由中间层与数据库交互。表现层是传统的JSP技术,自
21、1999年问世以来,经过多年的发展,其广泛的应用和稳定的表现,为其作为表现层技术打下了坚实的基础。中间层采用的是流行的Spring+Hibernate,为了将控制层与业务逻辑层分离,又细分为以下几种。Web层,就是MVC模式里面的“C”(Controller),负责控制业务逻辑层与表现层的交互,调用业务逻辑层,并将业务数据返回给表现层作组织表现,该系统的MVC框架采用Struts。Service层(就是业务逻辑层),负责实现业务逻辑。业务逻辑层以DAO层为基础,通过对DAO组件的正面模式包装,完成系统所要求的业务逻辑。DAO层,负责与持久化对象交互。该层封装了数据的增、删、查、改的操作。PO,
22、持久化对象。通过实体关系映射工具将关系型数据库的数据映射成对象,很方便地实现以面向对象方式操作数据库,该系统采用Hibernate作为ORM框架。Spring的作用贯穿了整个中间层,将Web层、Service层、DAO层及PO层无缝整合,其数据服务层用来存放数据。2.4 Struts框架Struts框架可分为以下四个主要部分,其中三个就和MVC模式紧密相关:模型(Model),本质上来说在Struts中Model是一个Action类,开发者通过其实现商业逻辑,同时用户请求通过控制器(Controller)向Action的转发过程是基于由struts-config.xml文件描述的配置信息的。视
23、图(View),View是由与控制器Servlet配合工作的一整套JSP定制标签库构成,利用她们我们可以快速建立应用系统的界面。控制器(Controller),本质上是一个Servlet,将客户端请求转发到相应的Action类。一堆用来做XML文件解析的工具包,Struts是用XML来描述如何自动产生一些JavaBeans的属性的,此外Struts还利用XML来描述在国际化应用中的用户提示信息的(这样一来就实现了应用系统的多语言支持)。struts框架的各个部分以及相互之间的运作:在使用Struts之前,咱们必先设置好JSP服务器,以便让服务器在用户请求时,知道该如何将指定后缀的请求转到相应的
24、ControllerStruts ActionServlet处理,当然,这些配置信息都一般在服务器启动时通过web.xml文件读入的。我们可以在web.xml定义多个Controller,为每一个应用定义一个Controller。控制器(Controller)Controller是这个框架中扮演“交通警察”的角色,当客户端与服务器有交互动作时,都由她来控制。Controller将HTTP请求封包并转发到框架中相应的对象,这些对象可能是一个JSP页面或一个Action。 Controller在web.xml中设置为org.apache.struts.action.ActionServlet的一个
25、实例,在一个完整的控制过程中,也就是处理一个HTTP请求时,在控制过程之初,这个Servlet会从一个配置文件struts-config.xml中获取请求与控制动作向对应的配置信息, Controller通过这些配置信息来决定HTTP请求该往何处转发,而这些Action在接收到转发来的请求后,实现真正的商业逻辑。Action对象要能够调用这个ActionServlet的若干方法,通过这个有力的特性,当Action对象在控制过程中将请求再向别的Action对象转发时(最初的请求是由ActionServlet获取,向Action对象转发,而Action对象还可以再转发到别的对象),我们可以将一些需
26、要共享的数据对象通过调用一些方法放入这个Servlet相关的一些标准容器中捎带过去。模型(Model)所谓Model就是在对用户请求的整个控制过程中,真正处理用户请求并保存处理结果的对象,在整个过程中,我们一般利用JavaBean来把一些信息保存起来以便在各个对象之间传递。因为在框架中,Model对象是真正处理商业逻辑功能的对象,因此也就是框架中应用需求实现相关性最大的部分。在Struts的实现里,Model的具体表现形式就是ActionForm对象和与其对应的Action对象了。对用户提交表单的数据进行校验,甚至对数据进行预处理都能在ActionForm中完成。通常的应用中,一般是一个Mod
27、el对象和一个请求页面对应的关系,但也可以一个Model对象对应多个页面请求。如果struts-config.xml配置文件没有指定一个Model对象对应的Action,那么控制器将直接把(通过Model对象完成数据封装的)请求转到一个View对象。视图(View)View对象通常来说都是指的JSP页面。Struts框架实际上并没有真正的JSP的要求规范,而是提供了大量的标签库来为开发者更简便的将JSP整合到Struts框架中。在Struts中通过标签定义方式的JSP页面能够将用户通过表单输入的数据存入一个JavaBean中,也就是我们前面提到的ActionForm Bean。通过Action
28、类调用(自动或手动)ActionForm的校验方法来检查用户输入的数据,如果发现不合法的数据,再通过Struts的一个通用机制将错误信息返回给用户显示。Struts框架提供了若干个标签库,它们有各自不同的用途。由于这些库还可以脱离Struts框架单独使用,这样我们也可以在其他系统中尝试使用这些标签库,它们包括:* struts- - 提供了类似甚至更强于中的功能。* struts-logic - 用于在页面输出文本信息时的条件、循环等流程的控制。* struts-template - 用于产生有共同风格的动态JSP页面模板。 此外,可定制标签库在Struts中还有一大用处是,通过资源文件的方式
29、来实现应用系统的多语言特性,应用Struts的系统若想将系统中的用户交互信息换一种语言的会很简单,更换一个不同的资源文件就可以了。struts-config.xml前面多次提到的struts-config.xml配置文件是整个框架的主心骨。web.xml文件定义了一个请求到来应向何处转发后,后面的工作就全权由struts-config.xml管理控制了。可以说struts-config.xml就是整个Struts框架的“大脑”,只有它清楚所有请求与动作的映射关系,如今的应用系统,XML形式的配置文件越来越多,如果整个系统只使用一个这样的配置文件的话,那么保持整个系统的模块化和可维护性都非常的轻
30、松。使用配置文件来描述请求-动作的控制过程和相互关系,而不是在代码中将对象之间的调用关系写死,那么当应用系统有变动时,我们只用修改配置文件就行了,而不是再重新编译发布程序了。Controller通过struts-config.xml文件的配置信息确定当有请求时应该调用那个对象来处理,从效率的角度出发,这些信息都是在系统启动时读入并存在内存中的。2.5 Spring框架Spring是一个开源框架,它由Rod Johnson创建。它是为了解决企业应用开发的复杂性而创建的。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅限于服务器端的开发。从简单
31、性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。目的:解决企业应用开发的复杂性功能:使用基本的JavaBean代替EJB,并提供了更多的企业应用功能范围:任何Java应用通过Spring提供的IOC容器,我们可以将对象之间的依赖关系交由Spring进行控制,避免硬编码所造成的过度程序耦合。有了Spring,用户不必再为单实例模式类、属性文件解析等这些底层的需求编写代码,可以更专注于上层的应用。Spring的特点: AOP编程的支持: 通过Spring提供的AOP功能,方便进行面向切面的编程,许多不容易用传统OOP实现的功能可以通过AOP轻松应付。 声明式事务的支持
32、: 在Spring中,我们可以从单调烦闷的事务管理代码中解脱出来,通过声明方式灵活地进行事务的管理,提高开发效率和质量。方便程序的测试:可以用非容器依赖的编程方式进行几乎所有的测试工作,在Spring里,测试不再是昂贵的操作,而是随手可做的事情。 方便集成各种优秀框架: Spring不排斥各种优秀的开源框架,相反,Spring可以降低各种框架的使用难度,Spring提供了对各种优秀框架(如Struts,Hibernate、Hession、Quartz)等的直接支持。降低Java EE API的使用难度: Spring对很多难用的Java EE API(如JDBC,Java Mail,远程调用等)提供了一个薄薄的封装层,通过Spring的简易封装
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1