网上预约挂号的设计与实现毕业设计论文

上传人:1777****777 文档编号:36993233 上传时间:2021-11-01 格式:DOC 页数:39 大小:1.14MB
收藏 版权申诉 举报 下载
网上预约挂号的设计与实现毕业设计论文_第1页
第1页 / 共39页
网上预约挂号的设计与实现毕业设计论文_第2页
第2页 / 共39页
网上预约挂号的设计与实现毕业设计论文_第3页
第3页 / 共39页
资源描述:

《网上预约挂号的设计与实现毕业设计论文》由会员分享,可在线阅读,更多相关《网上预约挂号的设计与实现毕业设计论文(39页珍藏版)》请在装配图网上搜索。

1、河南理工大学毕业设计(论文)说明书摘要如今计算机技术和网络技术发展趋势良好,网络的速度,稳定性和安全性都不断在改善,计算机和网络设备性价比也不断在提高,大众都普遍承认了这种信息传递媒介的便利性和有效性。通过网络实现预约挂号的想法便应运而生,求医者只需坐在家中,轻松的点击下鼠标,就可以挂上医院门诊号,可以做到“足不出户选医生”,这样能有效减少求医者的等待时间,使患者充分了解医院及相关医生的基本情况。这对于加强门诊挂号的便捷性,安全性,高效性和提高节源效益方面都有重大的意义。本系统主要为医院在医生和病人的信息管理方面建立平台。在系统设计方面,使用SSH(Struts2 + Spring + Hib

2、ernate)三大框架,采用B/S模式。数据库采用mySql,服务器端程序使用java程序设计语言在MyEclipse开发工具下进行编写,网页采用的是JSP技术,它拥有卓越的系统可移植性,同时它与流行的XML等技术也能良好整合,它使我们的网页更加生动、具有表现力。首先通过对系统的各方面分析,介绍系统的可行性。第二,通过系统各模块简介,简单介绍系统构成:系统管理模块、病人管理模块、医生管理模块、信息管理模块等。第三,说明系统实现所用到的各项技术的功能。最后,对以实现的系统功能进行简单测试。关键词:预约挂号、SSH、B/S、mySql、MyEclipse、Java、JspAbstractToday

3、, the computer technology and network technology development trend is good, the speed of the network, stability and safety are constantly improving, computer and network equipment performance to improve constantly too, the public is widely acknowledged the convenience and effectiveness of informatio

4、n transmission medium. Realize the idea of make an appointment through the network arises at the historic moment, Their patients just sitting at home, easily click the mouse, you can hang up the hospital outpatient service, patients can do it never leave home to choose a doctor, it can effectively r

5、educe the waiting time for their patients, making patients fully understand the basic situation of hospitals and doctors.This system is mainly for hospitals and doctors to establish the patients information management platform. In the system, the system uses SSH (struts2 + Spring + Hibernate) three

6、framework, using B/S mode. The database using MySQL, server-side programs use Java programming language in MyEclipse development tools to write, Web pages using JSP technology, it has the remarkable system portability, at the same time it and popular XML technology can be well integrated, it make ou

7、r website more vivid and expressive.Based on the analysis of the system is introduced, and the feasibility of the system. Secondly, through the system each module introduce, this paper in introduces the system of simple form: user management module, system management module, patient management modul

8、e, the doctor management module, the information management module, etc. Thirdly, use that system to realize the function of the technology. Finally, in order to realize the function of the system is simple test.Keywords: Pointment Registration、SSH、B/S、MySQL、MyEclipse、Java II目 录1 前言- 1 -1.1 选题背景和意义-

9、 1 -1.2 选题目的- 1 -1.3 国内外发展现状- 2 -1.4 主要解决的问题- 2 -2 需求分析- 3 -2.1 系统功能需求分析- 3 -2.2 系统的性能需求- 4 -3 系统可行性分析- 5 -3.1 技术可行性- 5 -3.2 经济可行性- 5 -3.3 操作可行性- 5 -4 相关技术及开发环境- 6 -4.1 B/S模型- 6 -4.2 SSH三大框架- 7 -4.3 Struts框架- 7 -4.3.1 控制器(Controller)- 8 -4.3.2 模型(Model)- 8 -4.3.3 视图(View)- 9 -4.3.4 struts-config.xml

10、- 9 -4.4 Spring框架- 9 -4.5 Hibernate框架- 10 -4.6 Tomcat 6.0- 11 -4.7 Jsp技术- 11 -4.8 MyEclipse 10开发工具- 12 -4.9 MySQL数据库简介- 12 -4.10 SQLyog图形化管理MYSQL数据库工具- 13 -5 系统的具体设计与实现- 14 -5.1 数据库设计- 14 -5.1.1 数据库的总体设计- 14 -5.1.2 数据库字典- 15 -5.2 系统流程设计- 19 -5.3 系统功能模块设计- 20 -5.3.1 用户模块- 20 -5.3.2 医生模块- 21 -5.3.3 管理

11、员模块- 21 -6 系统的实现- 22 -6.1 系统的部署- 22 -6.2 系统的实施环境- 22 -6.2.1 服务器端- 22 -6.2.2 客户端- 22 -7 系统功能的实现- 23 -7.1 主页面模块- 23 -7.2 预约挂号模块- 23 -7.3 医院概况功能模块- 26 -7.4 科室导航功能模块- 27 -7.5 专家介绍功能模块- 28 -7.6 医疗常识功能模块- 29 -7.7 新闻动态功能模块- 29 -7.8 登陆功能模块- 30 -7.9 用户注册功能模块- 31 -8 总结- 33 -致 谢- 34 -参考文献- 35 -IV1 前言1.1 选题背景和意

12、义作为社会组织的一个重要组成部分,社会医疗事业是和人民生活息息相关的领域。随着生活水平的提高,人们对自身所受医疗保健环境的要求也越来越高。医院需要以高质量的服务提供给大众。随着我国医疗体制的改革,医院自身的发展也需要不断提高自身的管理水平和竞争能力。而医院又是一个需要处理大量种类繁多、关系复杂的信息的机构,运用信息系统改进医院管理正所谓势在必然。随着网络通讯技术的发展,Internet应用的普及,医院网络预约挂号系统的实现成为了可能。该系统不仅具有一般门诊挂号系统的功能,又可以分析和统计患者的流量、各医生的就诊量,并且可指定或指导患者在预约的特定时间来就诊等等功能,在方便病人就诊的同时,大大提

13、高了医院工作效率和资源利用率。目前国内一些医院采用了部分中小型医疗管理系统,虽然满足了早期的医疗管理需求,但随着医院体制的不断改进和完善,早期的医疗管理系统已经不能完全满足新业务的需要,使得新一代全新的、适应业务发展要求的管理软件的开发迫在眉睫。其中挂号一直是困扰医院提高服务质量的一个复杂环节,特别是医疗水平高、门诊量大的医院,基于便利快捷等因素的考虑,用Browser/Web模式来设计考试系统比较合适,服务器端我们采用mySQL数据库系统和Java组件来构成应用服务系统;客户端采用浏览器来完成管理的全过程,同时可进行远程系统维护和管理。利用数据库技术,结合目前硬件价格普遍下跌与宽带网大力建设

14、的有利优势,应用JSP技术,开发医院挂号信息管理系统这一程序。网络预约挂号运用方便、操作简单,省时,省力,效率很高。通过提供完善的挂号信息管理系统,用户可自主地选择合适的医生,可以达到增加医生与管理人员之间、医生与病人之间的交流和联系的目的。同时医院可以通过网络预约以达到医院门诊挂号信息的共享,改善缓解医院窗口挂号的紧张现状。1.2 选题目的医疗事业与我们的生活密切相关,希望能够完成一个实用的,功能较完善的信息处理系统,帮助医生管理信息。本课题是为改善门诊高峰期挂号排队长、就诊长时间等待,环境拥挤混乱的现状,特别是解决专家号(名专家号)难挂的问题,杜绝倒号、炒专家号的现象,缓解门诊高峰的就诊压

15、力而提出的。利用该预约挂号系统,用户就可以在网上预约医院的专家、专科号,而无须再受排队之苦。能够对三方所输入的相关信息进行查询,保存,修改等功能,系统应该具有友好的界面,操作简单等特点。有了比较先进的软件,医院将会更好地为社会大众服务。达到增加医生与管理人员之间、医生与病人之间的交流和联系的目的。从而更好的改善就医环境,简化就医环节,节约就医时间,真正体现了以病人为中心,一切从方便患者出发,符合当今医院人性化温馨服务的理念。1.3 国内外发展现状在中国传统的医院门诊挂号是即时挂号、即时就诊门诊模式的。但是这种就诊的模式给患者带来许多不便。挂号时间长、候诊时间长、交费时间长、看病时问短。据统计,

16、患者在门诊有60%以上的时间都是用来等候的,真正就诊的时间却很短。这样就给病人及家属带来了众多的不便。而在欧美国家,患者看病一般都需要预约挂号。除非急诊,很少有人直接到医院找医生的。没有提前24小时的电话预约,医院一般也不会接诊。一些医院设立的预约挂号部门,一般都由经验丰富的医生、护士担任接线员,以便根据患者自诉症状建议应挂科室,推荐专家。也有部分的医院可以同时通过网站预约的。 随着网络功能及宣传手段不断优化和人民群众观念的不断更新,网上预约挂号前景无疑是可观的。按现在的中国门诊预约就诊患者的年龄及受教育程度和使用网络资源程度的情况分析来看,各种预约方式和谐并存着才能满足不用类型的患者的需求。

17、网上预约挂号的实施刚起步不久,预约挂号系统的不断改善优化还是一个循序渐进的过程,要先向更好地为习惯使用这一资源的患者服务的目标进发。1.4 主要解决的问题针对现在医院挂号难的情况,网上预约挂号系统可以使广大群众提前了解医院及相关医生的基本情况,根据自身情况合理的安排就医计划,减少候诊时间,方便就医。同时有利于医院提升管理水平,提高工作效率和医疗质量,降低医疗安全风险。网上预约正悄然改变着都市求医者的看病观念。拥有相对固定的个人医生和习惯。预约看病,将不再遥远,所以应用必将越来越广泛。2 需求分析2.1 系统功能需求分析医院预约挂号管理系统是为了在网上提供一个挂号信息的平台,通过对用户的业务流程

18、分析,我们可以分析出医院网上预约系统大致可以分为两类用户:一类是普通预约者,另一类是医院内部管理人员。那么一个较完整的系统大致要求具有以下功能:(1) 患者挂号预约预约者可先查询了解医生的详细信息,然后登陆,按需进行预约,做到“足不出户选医生”。同时注册患者可以修改个人信息。(2) 信息查询预约者可查询历次预约记录的清单;此外,预约者还可以掌握最新的门诊时间表,专家或医生的个人简介、照片、职称,以及每个诊次的所余挂号数量。(3) 医院概况可及时看到医院的详细介绍。(4) 新闻动态可及时看到医院最新的公告新闻信息。(5) 科室导航预约者可以详细查看该医院每个科室详细信息、医疗设备、该科室医生的信

19、息,方便选择合适的医生预约。(6) 专家介绍在这里预约者可以查看每个医生的详细信息,如职称、个人简介、专长以及该专家的预约信息等。(7) 医生查询预约信息实现查询自己未来诊次的病人预约情况;医生还可以修改自己的个人信息;并可根据具体情况对可开放网络预约的时间段进行个性化设置;在与患者诊疗时可根据自己的时间段和病人的时间安排,可与病人进行下一次的预约,从而达到每个就诊者多次看病的整体连续性。(8) 系统维护对数据库进行维护、对系统有关参数进行设定和调整。2.2 系统的性能需求该系统在性能功能上应达到如下需求:界面简约友好、操作简单易懂。用户使用系统只需点击喜欢的内容即可有链接实现。根据软件工程的

20、思想,以传统的瀑布模型为基础,进行软件需求分析,系统结构设计,数据结构设计,系统的实现,系统测试,系统维护。在结构上应具有很好的可扩展性,便于将来的功能扩展和维护。3 系统可行性分析在实施一个项目之前,首先要对将要实施的项目进行可行性研究,确定项目是否能够进行,是否值得进行。并不是所有的问题都有简单明显的解决办法,事实上,许多问题不可能在预定的系统规模之内解决。如果在问题没有可行的解的情况下,那么花费在这项工程上的任何时间、人力、软硬件资源和经费都是浪费的。3.1 技术可行性本系统基于Windows平台,采用B/S三层体系结构、SSH三大框架、JAVA语言编程和mySQL数据库技术设计并实现医

21、院挂号预约信息管理系统。该系统实现了在Internet上完成用户信息录入、修改及反馈的控制和管理,所以从技术上来说是可行的。3.2 经济可行性从本系统开发的角度来看,系统的投资成本比较低,只需购买参考资料以及开发系统时需要的开发工具。属于小型系统,工作量适中,使用难度适中,所使用的软件也是共享版,因此系统经济可行性是可行的。3.3 操作可行性由于现在科技的飞速发展,计算机早已普及生活的方方面面,便利的科技条件给人们带来优越的工作环境,这使人们对工作效率及可操作性都有了更高的要求。本系统是基于成熟的浏览器/服务器模式,这种模式具有良好的开放性,利用单一地访问点,用户可以在任何地点使用该系统,可以

22、跨平台以相同的浏览器界面访问系统。该系统平台直接面向管理员和患者用户,界面简单、明了,采用可视化界面,用户只需用鼠标和键盘就可以对系统进行管理及预约等功能。4 相关技术及开发环境4.1 B/S模型B/S结构,即Browser/Server(浏览器/服务器)结构,是随着Internet技术的兴起,对C/S结构的一种变化或者说是改进的结构。用户界面完全通过浏览器实现,一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现,形成三层结构,是一种全新的软件系统构造技术。B/S模式最大特点是:用户可以通过WWW浏览器去访问Internet上的文本、数据、图像、动画、视频点播和声音信息,这些信息都是由许

23、许多多的Web服务器产生的,而每一个Web服务器又可以通过各种方式与数据库服务器连接,大量的数据实际存放在数据库服务器中。客户端除了WWW浏览器,一般无须任何用户程序,只需从Web服务器上下载程序到本地来执行,在下载过程中若遇到与数据库有关的指令,由Web服务器交给数据库服务器来解释执行,并返回给Web服务器,Web服务器又返回给用户。在这种结构中,将许许多多的网连接到一块,形成一个巨大的网,即全球网。B/S模型结构图如图 41所示。图 41B/S模型结构图从上图可见,这种结构的一个重要的特点是,用户可以完全不需要安装客户端软件,当然也不需要担心任何软件升级和不兼容等任何客户端所遇到的问题。相

24、比之下,B/S模型的优点显而易见,更适合这个网站的构建,有利于网站的维护和扩充。4.2 SSH三大框架SSH三大框架即为Struts + Spring+Hibernate技术,典型的MVC三层结构,分为表现层、中间层(业务逻辑层)和数据服务层。三层体系将业务规则、数据访问及合法性校验等工作放在中间层处理。客户端不直接与数据库交互,而是通过组件与中间层建立连接,再由中间层与数据库交互。表现层是传统的JSP技术,自1999年问世以来,经过多年的发展,其广泛的应用和稳定的表现,为其作为表现层技术打下了坚实的基础。中间层采用的是流行的Spring + Hibernate,为了将控制层与业务逻辑层分离,

25、又细分为以下几种。Web层,就是MVC模式里面的“C”(Controller),负责控制业务逻辑层与表现层的交互,调用业务逻辑层,并将业务数据返回给表现层作组织表现,该系统的MVC框架采用Struts。Service层(就是业务逻辑层),负责实现业务逻辑。业务逻辑层以DAO层为基础,通过对DAO组件的正面模式包装,完成系统所要求的业务逻辑。DAO层,负责与持久化对象交互。该层封装了数据的增、删、查、改的操作。PO,持久化对象。通过实体关系映射工具将关系型数据库的数据映射成对象,很方便地实现以面向对象方式操作数据库,该系统采用Hibernate作为ORM框架。Spring的作用贯穿了整个中间层,

26、将Web层、Service层、DAO层及PO层无缝整合,其数据服务层用来存放数据。4.3 Struts框架Struts框架可分为以下四个主要部分,其中三个就和MVC模式紧密相关:(1) 模型(Model),本质上来说在Struts中Model是一个Action类,开发者通过其实现商业逻辑,同时用户请求通过控制器(Controller)向Action的转发过程是基于由struts-config.xml文件描述的配置信息的。(2) 视图(View),View是由与控制器Servlet配合工作的一整套JSP定制标签库构成,利用她们我们可以快速建立应用系统的界面。(3) 控制器(Controller)

27、,本质上是一个Servlet,将客户端请求转发到相应的Action类。(4) 一堆用来做XML文件解析的工具包,Struts是用XML来描述如何自动产生一些JavaBeans的属性的,此外Struts还利用XML来描述在国际化应用中的用户提示信息的(这样一来就实现了应用系统的多语言支持)。struts框架的各个部分以及相互之间的运作:在使用Struts之前,咱们必先设置好JSP服务器,以便让服务器在用户请求时,知道该如何将指定后缀的请求转到相应的ControllerStruts ActionServle处理,当然,这些配置信息都一般在服务器启动时通过web.xml文件读入的。我们可以在web.

28、xml定义多个Controller,为每一个应用定义一个Controller。4.3.1 控制器(Controller)Controller是这个框架中扮演“交通警察”的角色,当客户端与服务器有交互动作时,都由她来控制。Controller将HTTP请求封包并转发到框架中相应的对象,这些对象可能是一个JSP页面或一个Action。Controller在web.xml中设置org.apache.struts.action.ActionServlet的一个实例,在一个完整的控制过程中,也就是处理一个HTTP请求时,在控制过程之初,这个Servlet会从一个配置文件struts-config.xml

29、中获取请求与控制动作向对应的配置信息,Controller通过这些配置信息来决定HTTP请求该往何处转发,而这些Action在接收到转发来的请求后,实现真正的商业逻辑。Action对象要能够调用这个ActionServlet的若干方法,通过这个有力的特性,当Action对象在控制过程中将请求再向别的Action对象转发时(最初的请求是由ActionServlet获取,向Action对象转发,而Action对象还可以再转发到别的对象),我们可以将一些需要共享的数据对象通过调用一些方法放入这个Servlet相关的一些标准容器中捎带过去。4.3.2 模型(Model)所谓Model就是在对用户请求的

30、整个控制过程中,真正处理用户请求并保存处理结果的对象,在整个过程中,我们一般利用JavaBean来把一些信息保存起来以便在各个对象之间传递。因为在框架中,Model对象是真正处理商业逻辑功能的对象,因此也就是框架中应用需求实现相关性最大的部分。在Struts的实现里,Model的具体表现形式就是ActionForm对象和与其对应的Action对象了。对用户提交表单的数据进行校验,甚至对数据进行预处理都能在ActionForm中完成。通常的应用中,一般是一个Model对象和一个请求页面对应的关系,但也可以一个Model对象对应多个页面请求。如果struts-config.xml配置文件没有指定一

31、个Model对象对应的Action,那么控制器将直接把(通过Model对象完成数据封装的)请求转到一个View对象。4.3.3 视图(View)View对象通常来说都是指的JSP页面。Struts框架实际上并没有真正的JSP的要求规范,而是提供了大量的标签库来为开发者更简便的将JSP整合到Struts框架中。在Struts中通过标签定义方式的JSP页面能够将用户通过表单输入的数据存入一个JavaBean中,也就是我们前面提到的ActionForm Bean。通过Action类调用(自动或手动)ActionForm的校验方法来检查用户输入的数据,如果发现不合法的数据,再通过Struts的一个通用

32、机制将错误信息返回给用户显示。4.3.4 struts-config.xml前面多次提到的struts-config.xml配置文件是整个框架的主心骨。web.xml文件定义了一个请求到来应向何处转发后,后面的工作就全权由struts-config.xml管理控制了。可以说struts-config.xml就是整个Struts框架的“大脑”,只有它清楚所有请求与动作的映射关系,如今的应用系统,XML形式的配置文件越来越多,如果整个系统只使用一个这样的配置文件的话,那么保持整个系统的模块化和可维护性都非常的轻松。使用配置文件来描述请求-动作的控制过程和相互关系,而不是在代码中将对象之间的调用关系

33、写死,那么当应用系统有变动时,我们只用修改配置文件就行了,而不是再重新编译发布程序了。Controller通过struts-config.xml文件的配置信息确定当有请求时应该调用那个对象来处理,从效率的角度出发,这些信息都是在系统启动时读入并存在内存中的。4.4 Spring框架Spring是一个开源框架,它由RodJohnson创建。它是为了解决企业应用开发的复杂性而创建的。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。目的:解决企业

34、应用开发的复杂性。功能:使用基本的JavaBean代替EJB,并提供了更多的企业应用功能范围:任何Java应用通过Spring提供的IOC容器,我们可以将对象之间的依赖关系交由Spring进行控制,避免硬编码所造成的过度程序耦合。有了Spring,用户不必再为单实例模式类、属性文件解析等这些底层的需求编写代码,可以更专注于上层的应用。Spring的特点:(1) AOP编程的支持:通过Spring提供的AOP功能,方便进行面向切面的编程,许多不容易用传统OOP实现的功能可以通过AOP轻松应付。(2) 声明式事务的支持:在Spring中,我们可以从单调烦闷的事务管理代码中解脱出来,通过声明方式灵活

35、地进行事务的管理,提高开发效率和质量。(3) 方便程序的测试:可以用非容器依赖的编程方式进行几乎所有的测试工作,在Spring里,测试不再是昂贵的操作,而是随手可做的事情。(4) 方便集成各种优秀框架:Spring不排斥各种优秀的开源框架,相反,Spring可以降低各种框架的使用难度,Spring提供了对各种优秀框架(如Struts、Hibernate、Session)等的直接支持。(5) 降低JavaEEAPI的使用难度:Spring对很多难用的JavaEEAPI(如JDBC,JavaMail,远程调用等)提供了一个薄薄的封装层,通过Spring的简易封装,这些JavaEEAPI的使用难度大

36、为降低。4.5 Hibernate框架Hibernate是一种Java语言下的对象关系映射解决方案。它是一种自由、开源的软件。它用来把对象模型表示的对象映射到基于SQL的关系模型结构中去,为面向对象的领域模型到传统的关系型数据库的映射,提供了一个使用方便的框架。Hibernate不仅管理Java类到数据库表的映射(包括从Java数据类型到SQL数据类型的映射),还提供数据查询和获取数据的方法,可以大幅度减少开发时人工使用SQL和JDBC处理数据的时间。Hibernate对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。Hibernate可以应用

37、在任何使用JDBC的场合,它既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用。最具革命意义的是,Hibernate可以在应用EJB(EnterpriseJavaBeans是Java应用于企业计算的框架)的J2EE架构中取代CMP,完成数据持久化的重任。它的设计目标是将软件开发人员从大量相同的数据持久层相关编程工作中解放出来。无论是从设计草案还是从一个遗留数据库开始,开发人员都可以采用Hibernate。Hibernate的优点:(1)Hibernate使用Java反射机制而不是字节码增强程序来实现透明性。(2)Hibernate的性能非常好,因为它是个轻量级框

38、架。映射的灵活性很出色。(3)Hibernate支持各种关系数据库,从一对一到多对多的各种复杂关系。4.6 Tomcat 6.0Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。先进的技术、稳定的性能、源码开放和免费获取的机制,使得Tomcat深受Java爱好者的喜爱并得到了许多软件开发商的认可,成为目前相当流行的Web应用服务器。4.7 Jsp技术JSP全名为java server page,其根本是一个简化的Servlet设计,他实现了Html语法中的java扩张(以

39、形式)。JSP与Servlet一样,是在服务器端执行的,通常返回给客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户端。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。JSP技术使用Java编程语言编写类XML的tags和javaScript,来封装产生动态网页的处理逻辑。网页还能通过tags和javaScript访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计的显示分离,支持可重用的基于组件的设计,使基于Web的

40、应用程序的开发变得迅速和容易。JSP(Java Server Pages)是一种动态页面技术,它的主要目的是将表示逻辑从Servlet中分离出来。JSP页面由HTML代码和嵌入其中的Java代码所组成。服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。Java Servlet是JSP的技术基础,而且大型的Web应用程序的开发需要Java Servlet和JSP配合才能完成。JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。4.8 MyEclipse 10开发工具MyEclipse,是一个十

41、分优秀的用于开发Java, J2EE的Eclipse插件集合,MyEclipse的功能非常强大,支持也十分广泛,尤其是对各种开源产品的支持十分不错。MyEclipse企业级工作平台(MyEclipse Enterprise Workbench ,简称MyEclipse)是对EclipseIDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML、Struts、JSP、CSS、Javascript、Spring、SQL、Hibernate。简单而言,

42、MyEclipse是Eclipse的插件,也是一款功能强大的J2EE集成开发环境,支持代码编写、配置、测试以及除错。4.9 MySQL数据库简介MySQL是一个开放源码的小型关联式数据库管理系统,开发者为瑞典MySQL AB公司。目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。MySQL是一个快速的、多线程、多用户和健壮的SQL数据库服务器。它的主要功能只在组织和管理很庞大或复杂的信息和基于WEB的库存查询请求不仅仅为客户提供信息,而且还可以为您自

43、己使用数据库可以提供如下功能:(1) 减少记录编档的时间;(2) 减小记录检索时间;(3) 灵活的查找序列;(4) 灵活的输出格式;(5) 多个用户同时访问记录;4.10 SQLyog图形化管理MYSQL数据库工具SQLyog 是一个易于使用的、快速而简洁的图形化管理MYSQL数据库的工具,使用SQLyog可以快速直观地让您从世界的任何角落通过网络来维护远端的MySQL数据库。主要功能:(1) 快速备份和恢复数据。(2) 支持客户端挑选、过滤数据。(3) 批量执行很大的SQL脚本文件。(4) 以直观的表格界面建立或编辑数据表。(5) 进行索引管理。(6) 创建或删除数据库。(7) 操纵数据库的

44、各种权限:库、表、字段。(8) 输出数据表结构/数据为SQL脚本。(9) 支持对数据表的各种高级属性的修改。(10) 查看数据服务器的各种状态、参数等。5 系统的具体设计与实现5.1 数据库设计5.1.1 数据库的总体设计数据库是医院网络预约挂号系统的核心部分它不仅反映数据本身的内容,而且反映数据库之间的联系。在数据库中,是用数据模型实体关系图来抽象、表示处理现实世界中的数据和信息。以下给出了通过MySQL Workbench(数据库建模工具)设计的ER(数据库建模)图,如图 51。图 51 数据库建模图在完成系统的ER图之后,需要将ER模型转化为关系模型,也就是说,要设计出数据库所需要的表格

45、。在这里,选用的是关系数据库。因为关系数据库中的二维表格可以很清楚地描述数据之间的联系。在系统中定义的表格都严格地按照范式的思想和要求完成,数据库中的所有表格都达到了三范式的要求。根据系统ER图,针对本系统的特点,在对所搜集的数据进行规范化之后,定义了如下9张表格。通过对这9张表格的操作可以较好地完成系统设计的各项功能,九张表格之间有着不同程度的联系。5.1.2 数据库字典此软件文档系统采用MySQL数据库管理系统。首先在MySQL中建立一个数据库,将其命名为hospital,然后根据数据库的逻辑结构分析创建9张数据表。t_office:科室信息表用于存放所有科室的信息,如表 5-1;t_do

46、ctor: 医师信息表用于存放所有医师的信息,如表 5-2;t_order: 预约信息表用于存放所有患者的挂号信息,如表 5-3;t_patient: 用户信息表用于存放所有用户的信息,如表 5-4;t_hospital:医院信息表用于存放关于医院的信息,如表 5-5;t_healthtype: 医疗常识类别表用于存放医疗常识的类别,如表 5-6;t_health: 医疗常识表用于存放医疗常识,如表 5-7;t_news: 新闻信息表用于存放关于医院的新闻信息,如表 5-8;t_newstype: 新闻类别表用于存放新闻的类型如:院内新闻、行业新闻等,如表 5-9;九张表的表结果如下:(1)t

47、_office:科室信息表结构表 5-1 科室信息表字段名称字段类型说明idint主键IDnamevarchar科室名称introducevarchar科室介绍telvarchar科室电话headvarchar科室主任(2)t_doctor:医师信息表结构表 5-2 医师信息表字段名称字段类型说明idint主键IDnamevarchar医生姓名sexvarchar性别introducevarchar医生简介positionvarchar医生职位accountvarchar账户名称passwordvarchar账户密码picvarchar头像名称telvarchar电话号码emailvarcha

48、r邮箱addressvarchar住址skillvarchar特长officeIdint外键科室ID(3)t_order:预约信息表结构表 5-3 预约信息表字段名称字段类型说明idint主键IDnamevarchar疾病名称telvarchar患者电话patientNamevarchar患者名字bornvarchar患者出生日期weightvarchar患者体重sexvarchar患者性别startTimevarchar疾病开始时间illnessvarchar病情描述orderTimevarchar预约时间createTimevarchar提交时间doctorIdint外键医生IDpatie

49、ntIdint外键患者ID(4)t_patient: 用户信息表结构表 5-4 用户信息字段名称字段类型说明idint主键IDuserNmaevarchar账户名passwordvarchar账户密码trueNamevarchar真实姓名idCardvarchar身份证号ageint年龄sexvarchar性别telvarchar电话emailvarchar邮箱addressvarchar地址picvarchar头像图片名(5)t_hospital:医院信息表结构表 5-5 医院信息表字段名称字段类型说明idint主键IDintroducelongtext医院简介leaderslongtext

50、医院领导historylongtext医院历史researchlongtext教学科研armaruimlongtext医疗设备(6)t_healthtype:医疗常识类型表结构表 5-6 医疗常识类型表字段名称字段类型说明idint主键IDnamevarchar类型名称(7)t_health:医疗常识表结构表 5-7 医疗常识表字段名称字段类型说明idint主键IDnamevarchar名称resultlongtext内容createTimevarchar创建时间doctorIdint创建者IDhealthIdint医疗常识类型ID(8)t_news:新闻信息表结构表 5-8 新闻信息表字段名

51、称字段类型说明idint主键IDnamevarchar新闻名称detailslongtext新闻内容timevarchar创建时间newsTypeIdint新闻类型ID(9)t_newstype:新闻类别表结构表 5-9 新闻类别表字段名称字段类型说明idint主键IDtypeNamevarchar类型名称5.2 系统流程设计系统在用户登录的时候,除了对账号的合法性进行判断外,还对账号的类型判断,从而显示不同的界面给用户。普通用户可以查询系统内已有的科室信息和医师信息,根据自己情况预约或修改个人信息。医生登陆后可以查看自己的就诊信息、修改个人信息、发表或修改医疗常识。根据这些功能的要求,系统的

52、总体流程图如图 52。图 52 系统的总体流程5.3 系统功能模块设计通过对用户的业务流程分析,我们可以分析出医院网上预约系统大致可以分为两类用户:一类是普通预约者,另一类是医院内部管理人员。根据权限的不同这个系统总体功能可以分为三大模块:5.3.1 用户模块预约者来说,在网络上可以实现以下功能:(1)需要掌握最新的门诊时间表,专家或医生的个人简介、照片、职称、挂号费,以及每个诊次的所余挂号数量。这是预约之前必须了解的信息;(2)按需进行预约,“足不出户选医生”。可以按医生预约,同时预约者可以修改个人的相关信息;(3)如果预约者预约当天不能按时应诊,可以提前取消相关诊次的预约,相应诊次的号额返

53、回;如果又决定预约可进行再次预约。(4)查询历次预约记录的清单;(5)如果时间段已被选择,则需要预约患者重新选择时间段,如果系统有空闲,预约患者也满意,则进行预约,如果,不选择或不满意,则选择放弃。5.3.2 医生模块对于医务人员来说,在网络上可以实现以下功能:(1) 医生可以及时修改个人的信息如:个人简介,照片,专长等。(2) 发表自己一些医疗常识、健康养生等文章,同时也可以修改自己已发表的文章。(3) 医生可以查看自己的出诊记录,统计预约病人情况。5.3.3 管理员模块管理员可以管理医生、用户信息,如删除账号,还可以对医院所属科室进行添加、修改、删除的操作、也可以对科室所属医师进行添加、删

54、除和修改的操作,同时还要负责对医院公告信息、新闻、医院简介的及时修改更新。6 系统的实现6.1 系统的部署医院网络预约挂号系统是一个基于WEB的应用系统,在其B/S模式结构中主要有以下节点组成:浏览器、Internet、Web服务器和数据库服务器。下图 61为B/S模式结构图。图 61 B/S模式结构图6.2 系统的实施环境6.2.1 服务器端服务器:CPU 2G操作系统:Windows7JDK(Java Development Kit):JDK 6.0数据库:MySQL数据库Web服务器:Tomcat 6.0浏览器:IE6.0及以上6.2.2 客户端计算机:可正常上网娱乐即可操作系统:Win

55、dowsXP、Windows7等都可以浏览器:IE6.0以上7 系统功能的实现7.1 主页面模块主页主要用来显示医院的最新信息如:最新的新闻、公告等,它主要包括预约挂号、医院概况、科室导航、专家介绍、医疗常识、新闻动态、登陆等模块。前端界面如图 71。图 71 主页面界面主要代码的实现Action(value=home)public String execute() ourNewslist = ns.findByType(newsTypeId, 院内新闻);otherNewslist = ns.findByType(newsTypeId, 行业新闻);return success;7.2 预约

56、挂号模块通过该功能,用户可以查询该系统内所有的科室的医师信息如图 72,并根据用户自己的实际需要和实际情况选择合适的医师、合适的时间进行就医。如图为预约查询主页面用户可以选择适合的医生。图 72 预约挂号查询医生界面用户选择医生后可以查看医生信息,如果满意并且选择合适的预约时间就可以进入预约界面,如图 73。图 73 医生信息界面在预约界面填写患者的信息后提交即可完成挂号的预约,如图 74。图 74 预约信息界面主要代码的实现:Action(value=orderIndex)public String toOrderIndex()officelist = officeService.findA

57、ll();for(int i = 0;i officelist.size();i+)List list2 = doctorService.findByOfficeId(officelist.get(i).getId();doctorlists.add(list2);return success;Action(value=order)public String order()doctor = doctorService.findById(doctorId);office = officeService.findById(doctor.getOfficeId();List datelist = D

58、ateUtil.getNextDays(7);for(int i = 0 ; i datelist.size(); i +)Date d = datelist.get(i);String week = DateUtil.getWeek(d);String goodtime = DateUtil.goodTime(d);weeklist.add(week);monthlist.add(goodtime);for(int j = 0; j monthlist.size(); j +)ListList list2 = new ArrayListList();List orderlist1 = ord

59、erService.findByOrderTime(monthlist.get(j)+9:00-10:00,doctorId);List orderlist2 = orderService.findByOrderTime(monthlist.get(j)+10:00-11:00,doctorId);List orderlist3 = orderService.findByOrderTime(monthlist.get(j)+13:30-14:30,doctorId);List orderlist4 = orderService.findByOrderTime(monthlist.get(j)+

60、14:30-15:30,doctorId);List orderlist5 = orderService.findByOrderTime(monthlist.get(j)+15:30-16:30,doctorId);list2.add(orderlist1);list2.add(orderlist2);list2.add(orderlist3);list2.add(orderlist4);list2.add(orderlist5);orderlists.add(list2);todayOrder = orderService.findBySql(DateUtil.goodTime(datelist.get(0),doctorId);return success;Action(value=saveOrder,results=Result(name=success,type=redirectAction,params=actionName,orderIndex)public String saveOrder()orderService.saveOrder(name, patientName, born, weight, sex, startTime, illness, doctorId, patientId, orderTime, tel);return success;

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!