《基于jsp的住院病人信息管理系统本科学位论文.doc》由会员分享,可在线阅读,更多相关《基于jsp的住院病人信息管理系统本科学位论文.doc(57页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、 本科毕业论文(设计)(2014届)基于JSP的住院病人信息管理系统院 系 计算机科学与技术系专 业 计算机软件 姓 名 指导教师 职 称 合肥师范学院2014届本科生毕业论文(设计)基于JSP的住院病人信息管理系统摘 要今天,互联网技术高速发展,信息管理技术被广泛应用于各行各业。医学领域内,随着医院信息化进程的提速,使用计算机技术管理住院病人信息十分必要。本次设计采用JSP语言作为开发工具,设计实现了住院病人信息管理系统,旨在提高整个医院的工作效率和工作质量。本系统包括管理员模块、医生模块、护士模块和食堂管理员模块四个部分,四个模块相互协调,共同实现以下功能:住院登记、病人出院、住院药品管理
2、、膳食管理、查询病人住院信息、用户管理和系统维护等功能。本系统是基于B/S模式,用户通过浏览器使用系统。本文首先介绍了系统开发意义和使用到的开发工具和技术,然后进行需求分析和系统设计以及系统测试,论文的最后是结论、致谢以及参考文献,并附录几个重要模块的代码。关键词:住院病人信息管理系统 JSP SQL Server 2008 B/S模式ABSTRACTNowadays, the rapid development of Internet technology, information management technology is widely used in various industr
3、ies. Within the field of medicine, with the acceleration of the process of hospital information, the use of computer technology in patient information management is essential. The design uses JSP language as a tool and aims at improving the efficiency and quality of the entire hospital. The system c
4、onsists of four parts, administrator module, the module of doctors, the module of nurses and cafeteria manager module, the four modules coordinated together to achieve the following functions: patient admission and discharge management, hospitalization expenses management, medical advice management,
5、 and patient inquiries user management and system maintenance functions. The system is based on B/S mode, the user can use the system through a browser. This paper describes the development of the meaning and use of the system to develop tools and techniques, and requirements analysis andsystem desi
6、gn and testing, the papers final conclusion, Acknowledgements and references, and appendix code several important modules.Key words:IMIS JSP SQL Server 2008 B/S mode 目 录第1章 绪论11.1项目开发背景11.2开发工具与相关技术介绍11.3系统环境配置31.4论文组织结构3第2章 系统分析42.1需求分析42.2系统总体分析52.3可行性分析6第3章 系统设计63.1系统功能描述63.2系统功能模块设计73.3核心功能流程113
7、.4数据库设计133.5系统安全性设计19第4章 详细设计与实现204.1身份验证模块204.2管理系统用户模块214.3病人基本信息管理模块224.4病人诊断信息管理模块234.5膳食管理模块244.6其它功能模块25第5章 系统测试265.1登陆模块测试275.2添加用户模块测试275.3病人登记住院模块测试285.4病人结账出院模块测试295.5医生诊断模块测试295.6用户修改信息模块测试30第6章 结束语31致 谢32参考文献33附 录34第1章 绪论1.1项目开发背景随着科学技术的不断提高,计算机科学技术日渐成熟,它已进入人类社会的各个领域并发挥着越来越重要的作用。计算机信息管理系
8、统利用计算机强大的数据处理能力,通过计算机软件实现信息管理,可以更加准确、实时、可靠。随着我国医疗改革的进一步深化,减少医护人员增加医院效率已势在必行,这就为病人信息管理工作提出了新的挑战:如何使医护人员从繁重的手工抄计病人信息的工作中解放出来,使结果更加科学和准确,实践证明,应该采用计算机管理这一途径1。因此,利用计算机实现住院病人信息管理乃至整个医院信息管理势在必行。虽然住院病人信息管理系统可以认为是医院信息管理系统的一个子系统,但其实现的功能是医院信息管理系统的核心功能,而且其专业性要求比一般系统要高,特别是病人管理功能,如病人出院不仅仅是删除数据,还要计算病人的住院费用等。目前国内医院
9、虽然有一部分的医院采用了医院信息系统,但其一般都是采用C/S模式设计,虽然界面比较美观,但其成本要求很高,而且功能简单,维护困难,升级更是难上加难。所以住院病人信息管理系统在各个方面都有待提高。B/S模式很好的解决了成本、系统维护升级困难等问题,在此背景下开发一款基于B/S模式的住院病人信息管理系统很有必要。1.2开发工具与相关技术介绍1.2.1开发工具本系统的开发使用面向对象软件开发技术,以Myeclipse8.0作为前后台开发工具,以SQL Server 2008作为数据库开发工具,而服务器则使用Tomcat6.0。结合Java语言的完全面向对象技术和JSP语言的简单方便特点以及SQL的强
10、大的数据库查询技术,能很轻松的实现系统所需的需求功能。MyEclipse8.0是一款非常优秀的用于开发Java、J2EE的开发工具,现在很多软件公司都在使用。MyEclipse有着非常强大的功能,支持范围十分广泛,尤其是在对各种开源产品的支持方面十分优秀。MyEclipse像eclipse一样,目前支持Java Servlet、AJAX、 JSP、 JSF、 Struts、Spring、Hibernate、EJB3、JDBC数据库链接工具等多项功能2。目前可以说只要是eclipse支持的开发插件,MyEclipse几乎全部都能很好的支持,并且其功能更加强大。图1.1是Myeclipse8.0的
11、Web开发主界面。图1-1 Myeclipse主界面系统所用的后台数据库开发平台是SQL Server 2008,它是Microsoft公司推出的SQL Server数据库管理系统众多版本中的一个版本,SQL Server 2008(简称SQL 2008)是数据库管理系统软件,可以运行在网络环境下,能通过网络使用。数据库系统是数据管理的实用技术,它的出现提高了计算机应用向各行各业的渗透的速度和广度。SQL Server 2008是单进程、多线程、高性能的关系型数据库管理系统(RDBMS)3。它使用的是现在很流行的Transact-SQL语言传送请求。图1.2是SQL Server 2008的W
12、eb开发主界面。图1-2 SQL Server 2008主界面1.2.2 B/S模式B/S(Browser/Server)模式又叫浏览器和服务器模式。它是随着Internet技术的高速发展,对C/S模式的改进和扩展。在B/S结构下,用户的运行界面是通过网页浏览器向服务器发送请求来实现的。B/S模式最大的优点是运行维护比较方便,系统升级很简单,能实现不同的用户,在不同的地点,以不同的接入方式(如LAN, WAN, Internet/Intranet等)访问和操作相同的数据4。1.2.3 JSPJSP语言以Java语言为基础,集成了Java Enterprise API,在Web应用系统开发领域具
13、有非常大的优势,技术发展到今天,通过Java平台构建网络程序被大多数人认为是未来最有发展前途的Web技术5。今天,在国内有很多人重视JSP技术的发展,越来越多的动态网站开始采用JSP技术。JSP实现了真正意义上的跨平台,只要服务器(Apache等)支持,就可以运行基于JSP技术的Web应用程序,由于Apache广泛应用在Windows NT,UNIX和Linux上,因此JSP有更广泛的运行平台6 。JSP技术分离了网页的静态内容和动态内容,使用JSP,程序员可以使用HTML或XML标记来设计和格式化静态内容,并通过JSP标记及JS制作动态内容。1.3系统环境配置1安装jdk本系统使用jdk开发
14、。下载安装后,配置path环境变量。2安装Myeclipse8.0本系统采用面向对象的软件开发方法,以Myeclipse8.0作为前台开发工具。3安装Tomcat本系统使用Tomcat6.0作为Web服务器,启动前需设置java_home环境变量。4安装SQL本系统使用SQL Server 2008作为后台数据库。 5系统布署将项目文件布署Tomcat6.0,并启动Tomcat6.0服务器,从浏览器上输入网址,进入项目。1.4论文组织结构本论文描述了住院病人信息管理系统从设计到实现的整个过程。首先介绍了项目的背景及项目开发工具及相关技术,然后描述了系统分析、系统设计与系统实现环节,接着简述了系
15、统测试,最后总结全文。重点介绍了系统总体设计和数据库设计,并在附录中列出了几个主要功能模块的窗口及源码。第2章 系统分析2.1需求分析一个系统好坏的关键就是有没有一个完整的需求分析。要想做好住院病人信息管系统的需求分析,就是要在不断的调查和研究的基础上,自己总结系统所需要的真正功能,以做到一个完美的需求。要想将现实世界抽象为一个好的概念模型,好需求分析是必不可少的。本系统的需求分析是在不断的实地调查,询问了一些医护人员对住院病人管理系统的要求的基础上,自己做充分的总结,主要是从不同的用户需要的不同的功能做的需求分析。2.1.1管理员所需的使用功能系统管理员拥有最高的管理权限,负责系统的运行和维
16、护,需要实现以下功能:1.添加新用户。因为本系统属于医院内部使用的管理系统,所有的使用用户都只能由管理员添加,本系统不对外提供注册功能。 2.查询及修改所有用户的信息,包括:用户名、密码、身份等。 3.修改个人信息,只包括用户名和密码,还有身份信息。4.查看食堂信息,可以直接通过web查询食堂今天的菜系价格等。5.数据库备份还原。2.1.2护士所需的使用功能护士作为登陆用户,需要实现以下功能: 1.登记病人住院,能对病人的基本信息进行增、删、改、查操作。 2.实现病人结账出院功能。病人结账出院要能查询账单,并成功结账。3.修改个人信息,只包括用户名和密码,还有身份信息。4.查看食堂信息,可以直
17、接通过web查询食堂今天的菜系价格等。2.1.3医生所需的使用功能 医生作为登录用户,需要实现以下功能:1.查询自己正在诊断的病人有哪些以及他们的基本信息。2.查询自己的病人的诊断史及用药史。 3.诊断自己的病人及给自己的病人开药。4.修改个人信息,只包括用户名和密码,还有身份信息。5.查看食堂信息,可以直接通过web查询食堂今天的菜系价格等。2.1.4食堂管理员所需使用功能医院食堂管理人员作为登陆用户,主要管理病人的膳食,需要实现以下功能:1.管理食堂的菜样,可以对食堂菜库中的菜样进行增、删、改、查。2.可以对今天食堂的供应菜样进行增、删、改、查。3.修改个人信息,只包括用户名和密码,还有身
18、份信息。4.查看食堂信息,可以直接通过web查询食堂今天的菜系价格等。2.2系统总体分析 在系统功能分析的基础上,做系统功能模块图如下:住院病人信息管理系统系统管理员护士医生食堂管理员管理用户登记入院结账出院查询病人诊断病人管理菜库设置菜样修改基本信息查看今天菜样图 2-1 医院管理系统的功能模块图2.3可行性分析1.技术上可行性住院病人信息管理系统采用基于Web开发技术进行实现,采用JSP语言作为开发工具。今天越来越多的大型网站的开发开始采用JSP作为工具语言,和其他网页语言相比JSP有许多自身的优点,首先,JSP实现了跨平台,基本上能在任意平台上的任意环境中开发,并在任意平台上进行访问。
19、其次,JSP具有强大的可伸缩性,只要一个小小的Jar文件就可以运行Servlet/JSP,一台服务器可以运行多台服务器也可以很好的工作,JSP具有了Java所具有的巨大的生命力7。最后,随着JSP的使用越来越多,JSP有了很多功能强大的开发工具支持,像:Eclipse,MyEclipse等。而且许多可以免费得到,并且其中许多已经可以顺利的运行于多种平台之下。2.经济上可行性由于本系统是毕业设计,软硬件设计较为简单,只要一台能连网的个人PC就能实现,所以本系统基本不需要格外的开发成本,服务器和开发工具个人PC可完全胜任,所以在经济上是可行的。3.操作上可行性。从前面分析看,技术上的操作已经十分成
20、熟并且也已经广泛的被人们使用,从而系统的操作是可行的。第3章 系统设计系统设计关乎整个系统的成败,功能模块设计又是整个系统设计的重要部分,因此做好系统设计就是要做好功能模块设计。本系统中以病人信息为中心点,各种功能都是围绕病人信息展开,主要有登记入院,结账出院,诊断病人等。3.1系统功能描述根据住院病人信息管系统的实际情况,本系统主要要求实现的功能有:系统用户管理功能(包括对增加用户、查看用户信息、修改用户信息)、病人登记住院(护士人员登记病人的基本信息、医生能对病人进行诊断和开药)、病人结账出院(护士人员能查看病人的信息包括病人的基本信息、住院信息)、膳食管理功能(食堂管理员管理食堂菜库信息
21、、食堂管理员能根据食堂的实际情况在网上设置每天的菜样、一般用户能通过网络查看每天食堂中的菜样)、系统管理功能(包括数据库的备份和还原功能)、其他功能(每个用户能修改自己的信息等功能)等。本系统应达到以下目标:不同身份的用户权限不一样,包括系统管理员、医生、护士和食堂管理员。病人结账出院时能清楚的显示病人的费用信息,系统能根据病人的住院情况和药品使用情况自动准确的计算出病人的费用信息。病人登记住院时能由护士填写基本信息。系统数据处于一个安全状态,不同的用户只访问特定的数据。最后系统的界面应该简洁美观,功能应该健全。3.2系统功能模块设计3.2.1身份验证模块在登陆界面输入的用户名、密码,并通过R
22、equest请求传给后台的Servlet,在Servlet中查询并比对数据库。本系统允许用户重名,采用用户名和密码共同确定用户身份,密码要以*显示。在Servlet中对用户名和密码进行校验,然后根据不同的身份跳入不同的界面,若用户名或密码不正确都能给出友好的错误提示界面,并引导用户重新返回系统登陆界面8。身份验证输入用户名和密码提示密码错误提示用户名错误图 3-1 身份验证模块图3.2.2管理系统用户模块由于本系统是医院内部使用,为了系统数据的安全性,本系统不对外提供注册功能,本系统设置所有的用户只能由管理员添加。管理员拥有最高的权限,可以添加用户、查看所有用户信息、更改所有用户信息、删除用户
23、信息等功能。管理用户模块添加用户信息查看用户信息删除用户信息更新用户信息图3-2 管理系统用户模块图3.2.3病人登记住院模块病人住院登记模块,有新的病人入院时,护士拥有权限登记新的病人信息,要求录入病人的基本信息(姓名、性别、年龄等),录入的住院信息(住院时间,科室,主治医生等)。还要求能更新病人的基本信息,删除病人的基本信息等。病人登记住院录入病人信息更新病人信息删除病人信息图3-3 病人登记住院模块图3.2.4病人结账出院管理模块病人结账出院管理模块,病人痊愈,结账出院,要求能打印病人的住院信息,要能显示病人的入院时间,出院时间等信息,计算出病人的各项费用(住院费,药品费)等功能。 病人
24、结账出院计算病人费用打印病人信息删除病人信息图3-4 病人结账出院管理模块图3.2.5医生诊断管理模块医生能查看自己正在诊断的病人,能查看自己病人的诊断史以及用药史。医生能根据病人的诊断史对病人进行诊断,根据病人的用药史给病人开药。医生诊断管理模快查询已有病人查询病人诊断史诊断病人并开药图3-5 医生诊断管理模块图3.2.6膳食管理模块膳食管理功能由食堂管理员实现,该功能模块主要要求食堂管理员能管理食堂菜品,能设置每天食堂的菜品,能对菜品库中的菜样进行增、删、改、查。膳食管理模块管理菜库中菜品设置今天菜样管理今日食堂图3-6 膳食管理模块图3.2.7其它功能模块 为了方便用户的使用,系统还有设
25、置了一些其它常用功能, 修改自己的个人信息及密码功能,查看今日食堂膳食功能等。其它功能模块修改个人信息查看今日食堂图3-7 其它功能模块图3.2.8整个系统的功能模块图图3-8 系统功能模块图3.3核心功能流程图3.3.1添加功能用户管理、病人管理和菜品管理等模块中都有添加模块,添加模块是所有信息管理系统的核心功能,很多功能都是建立在添加功能基础上的。添加功能在本系统实现的过程中,使用的是基于数据库的操作,使用SQL查询语句向数据库表中插入数据来实现的,具体流程如下图所示: 图3-9 添加功能流程图3.3.2删除功能用户管理、病人管理、结账出院和管理菜品等模块中都有删除模块。删除模块是所有信息
26、管理系统的核心功能,很多功能都是建立在删除功能基础上的。病人结账出院,要把数据库中的病人信息删除,以减少数据库中的无用数据。在本系统实现的过程中,使用的是基于数据库的操作,使用SQL查询语句来实现的,具体流程如下图所示: 图3-10 删除功能流程图3.3.3查询功能用户管理、病人管理、结账出院和管理菜品等模块中都有删除模块。删除模块是所有信息管理系统的核心功能,很多功能都是建立在查询功能基础上的。在系统实现中,大部分基于数据库的操作大都是使用SQL查询语句来实现的,具体流程如下图所示:图3-11 查询功能流程图3.4数据库设计SQL Server是Microsoft公司推出的一种关系型数据库系
27、统。SQL Server 20008是Microsoft 公司推出的SQL Server 数据库管理系统,该版本继承了以前版本的优点,同时又增加了许多更先进的功能。在应用系统中,对数据查询及处理速度已成为衡量一个系统是否成功的标准,数据库管理系统SQL Server由于其强大的信息操作和数据管理能力为大众所喜爱9。本系统采用SQL Server 20008数据库管理系统管理系统的数据库。3.4.1建立数据库的方法数据库设计是建立在用户需求的基础之上的,所以要想设计一个好的数据库系统,就要充分做好系统的需求。一般来说,数据库设计可以按照以下几个步骤进行:(1)确定该系统的E-R模型,画出E-R图
28、。(2)将E-R模型转换为关系模型。(3)确定系统中要用到的表并确定表中需要的字段。(4)确定表的主键以及不能重复的字段。(5)设置不同表之间的参照关系。(6)优化自己的设计住院病人信息管理的数据库设计步骤如下。(1)打开数据库资源管理器,选中“数据库”选项,在该选项上单击右键,弹出的下拉菜单中选择“新建数据库”选项。保存并命名为“Hospital_System”。(2)在数据库资源管理器,选择“安全性”中的“登录”选项,单击右键选择“新建登录”选项输入用户信息创建新用户。(3)打开“Hospital_System”数据库中的选项,找到“表”选项,单击右键弹出快捷菜单选择“新建表”命令,在新弹
29、出的窗口中设置表的详细信息,包括各个字段的名称、数据类型、长度等信息,最后输入表名并保存。(4)打开数据库的“表”选项,选中要编辑的表,单击鼠标右键。在弹出的快捷菜单中选择“编辑前200行”然后在返回的窗口中输入表的内容信息,然后关闭显示窗口,系统自动保存表中的信息工作。这样名为Hospital_System的数据库就建成了,并在该数据库中输入了有用的信息。3.4.2 E-R图实体关系模型E-R图是抽象现实世界的有力工具。它通过画图的方式,将实体以及实体的关系描述出来,为客观世界建立概念上的模型 10 。下面是本系统的E-R图: 系统用户用户ID用户姓名用户密码用户身份图3-12 系统用户实体
30、图菜品菜品名单价图片名称图3-13 菜品实体图药品药品条码药品名称药品单价生产商服用方式药品规格药品类型图3-14 药品实体图医生开出的药品药品单价生产商服用方式药品条码药品名称药品类型药品规格开药数量图3-15 医生开出的药品实体图病人基本信息病人科室主治医生住院日期病人性别病人年龄病人姓名病人ID病人床位号图3-16 病人基本信息实体图病人诊断信息诊断日期主治医生医生编号病人ID诊断详情图3-17 病人诊断信息实体图病人用药信息药品名称药品数量药品价格病人ID病人姓名图3-18 病人用药实体图图3-19 整个系统实体关系图3.4.3建立数据表根据E-R模型,设计数据库中的表,数据表是一个数
31、据库中的基本对象,在数据库设计中,数据表的设计是关键在设计数据库时,关键的步骤就是要确保数据正确地分布到数据库的表中。 使用正确的数据结构,不仅便于对数据库进行相应的存取操作,而且可以极大地简化应用程序的其他内容(查询、窗体、报表、代码等)。正确进行表设计的正式名称就是“数据库规范化”。规范化数据库设计基本的要求是使用规范化的方法来将数据分为多个相关的表,将关系表达式规范化,最低要到达到第三范式。大体可以通过拥有窄表的多少来判断数据库是否是规范化的数据库。数据库中的每张表都应该有一个并只有一个主键,所谓的主键就是:表中的一个列或几个列的组合,其值能唯一地标识表中的每一行。并且,每张表最好应具备
32、有一个id列,便于多表的关联。每一张表只能够用来存储同一数据类型的数据,最好避免空列,这样才会使自己的数据库更加合理、高效。住院病人信息管理系统需要实现:住院登记、住院药品管理、膳食管理、住院收费、办理病人出院、 查询病人住院信息、用户管理等功能,包括的数据比较多,所以本系统的数据库由8个表组成的,每一个表都有唯一的主关键字,有些表之间存在参照关系。下面是本系统所具有的数据表:表3-1 系统用户表字段列名数据类型长度说明1IDint4编号2Usernamenchar30用户名3Passwordnchar30用户密码4Identnchar30用户身份标记表3-2 药品管理表字段字段名数据类型长度
33、说明1Tiaomanchar15药品条码2Mnamenchar40药品名称3Pricemoney药品单价4Addressnchar40药品生产商5Waynchar80药品使用方法6Guigenchar80药品的规格7Typenchar80药品的类型8Datenchar30质检日期表3-3 菜样信息表字段字段名数据类型长度说明1Dishnamenchar40菜样名称2Photonchar40菜样图片路径3Pricemoney菜样单价表3-4 病人基本信息表字段字段名数据类型长度说明1identitycardint4编号2pnamenchar15姓名3psexnchar6性别4pageint4年龄
34、5bedcardnchar15床位号6pofficenchar20科室7pdoctornchar20主治医师8pdatadate入院日期9doctoridnchar20主治医生编号表3-5 病人诊断信息表字段字段名数据类型长度说明1identitycardnchar40病人编号2doctornchar20诊断医师姓名3doctoridnchar20诊断医师编号4diagnosenchar1000诊断内容5datedate诊断时间表3-6 病人使用的药品信息表字段字段名数据类型长度说明1identitycardnchar40病人编号2pnamenchar20病人姓名3menamenchar60药
35、品名称4menumberint4药品数量5pricemoney药品单价表3-7 医生开药临时表字段字段名数据类型长度说明1tiaomanchar15药品条码2mnamenchar40药品名称3pricemoney药品单价4addressnchar40药品生产商5waynchar80药品使用方法6guigenchar80药品的规格7typenchar80药品的类型8datenchar30质检日期10mnumberint4开药数量表3-8 今日食堂菜样表字段字段名数据类型长度说明1dishnamenchar40菜样名称2photonchar40菜样图片路径3pricemoney菜样单价3.5系统安
36、全性设计3.5.1数据库的完整性数据库的完整性(Integrity)是指数据的正确性、有效性和相容性。数据的完整性约束主要有实体完整性约束、参照完整性约束、函数依赖约束、统计约束四类11。在住院病人信息管理系统中,实体完整性就是指表的主键要设置、还有一些列不能为空。参照完整性主要有:病人诊断信息表和病人用药信息表中的“identitycard”字段要参照病人基本信息表中的“identitycard”字段;医生开药临时表中的“doctorid”字段要参照系统用户表中的“ID”字段;医生开药临时表中的“mname”字段要参照药品管理表中的“mname”字段;医生开药临时表中的“tiaoma”字段要
37、参照药品管理表中的“tiaoma”字段等参照关系,让系统中的数据处于安全状态。3.5.2数据库的安全性数据库的安全性(Security)是指保护数据库,防止不合法的使用。数据库系统的安全性是和计算机系统的安全性紧密相连的,包括操作系统、网络系统和计算机硬件的安全性。它们之间相互支持的,共同让数据库处在一个安全状态。SQL Server一般支持三级安全层次,它们分别是:身份认证(与Windows的紧密结合。)、访问控制(设置数据库访问权限)、对象访问控制(给用户指派对数据库中的对象的访问权限)12。本系统采用了三层控制确保数据库的安全性,第一层是Windows身份验证,打开数据库服务器是要求输入
38、用户名和密码,第二层是在后台Microsoft SQL Server 中实现的,户登录数据库时,要求用户输入合法的用户名和密码。第三层是对象访问控制,不同的用户能访问到的数据库中的数据不一样。3.5.3统安全性一个系统的安全性决定了这个系统能不能用于实际应用,只有安全可靠的系统才能被用于实际生活。随着基于Web服务为基础的应用系统被广泛的应用于社会各个行业各个方面,Web系统的安全问题日益凸显,对Web应用系统开展安全性测试能够在很大程度上保证Web服务的安全性13。系统安全性对技术要求较高,本系统只进行了简单的系统安全性控制,通过改进登陆代码中的用户名和密码同数据库比对技术,防止了非法用户通
39、过SQL语句注入手段非法访问数据库。通过登陆过滤手段,实现了不能通过URL访问系统的功能,通过已掌握的技术手段提高了系统的安全性。第4章 详细设计与实现4.1身份验证模块系统中所有的用户都需要通过身份验证才能进入系统,身份验证通过登陆模块实现,用户登陆时只要求用户输入用户名和密码,无需输入自己的身份,这样使系统更加友好。当用户名或密码有误时,系统能给出准确的提示并跳转提示界面。图4-1就是登陆主界面。图4-1 登录界面4.2管理系统用户模块系统的用户管理是由系统管理员完成,本系统中系统管理员拥有最高权,主要功能是管理本系统的使用用户,能对用户信息进行增加、删除、修改、查询。图4-2是其主界面。
40、图4-2 管理员界面4.3病人基本信息管理模块病人信息管理模块主要负责病人的基本信息管理,包括病人住院登记模块、病人结账出院管理模块、病人信息查询模块。 4.3.1护士主界面护士拥有登记病人住院,病人结账出院,查看病人信息等功能。图4-3是其主界面。图4-3 护士主界面 4.3.2登记病人住院主界面登记病人住院工作由护士完成,主要功能是准确的录入病人的基本信息。图4-4是其主界面。图4-4 登记病人住院主界面4.3.3病人结账出院主界面病人结账出院工作由护士完成,病人结账出院需要计算并打印病人的住院费用。图4-5是其主界面。图4-5 病人结账出院主界面4.4病人诊断信息管理模块病人的诊断信息管
41、理模块主要负责管理病人的诊断信息,病人的诊断信息包括医生给病人的诊断信息、开药信息。医生在诊断病人时能查看病人的诊断史。4.4.1医生主界面医生能查看自己的真在诊断的病人信息、诊断自己的病人、为自己的病人开药。图4-6是其主界面。图4-6 医生主界面4.4.2医生查询病人信息主界面医生能查看自己病人的诊断信息,根据病人的诊断信息对病人做出诊断。图4-7是其查询病人主界面。图4-7 医生查询病人信息界面4.4.3医生诊断病人主界面医生能对病人做出诊断,能诊断病情,能给针对病人进行开药。图4-8是其界面。图4-8 医生诊断界面4.5膳食管理模块4.5.1食堂管理员主界面食堂管理员主要负责膳食管理模
42、块,他可以管理菜库,设置今日食堂的菜样,修改自己的密码,查看食堂菜样等。食堂管理员主界面如图4-9所示。图4-9 食堂管理员主界面4.5.2添加菜样主界面菜样管理有食堂管理员完成,能对菜品进行增加、删除、修改、查询。图4-10是其界面。图4-10 菜样管理界面4.5.3管理今日菜样主界面食堂管理员能管理今日食堂的菜样,包括添加和删除。图4-11是其主界面。 图4-11 设计今日菜品主界面4.6其它功能模块其它功能模块包括用户修改自己密码和查看食堂菜样模块。4.6.1用户修改自己信息主界面每个用户能修改修改自己的信息。图4-12是其界面。图4-12 用户修改个人信息界面4.6.2查看今日食堂主界
43、面登陆系统的用户能通过网络查看今日食堂的菜样。图4-13是其界面。图4-13 用户查看今日食堂菜样界面第5章 系统测试系统测试应该占据制作过程的一半工作量,完整的测试是成功开发一个信息系统的重要保证之一。目前国内很多软件公司都忽视了系统测试,认为其不重要,这是一种错误的做法。系统测试是将已经集成好的软件系统,作为整个计算机系统的一个元素,与计算机硬件、外设、某些支持软件、数据和人员等其他系统元素结合在一起,在实际环境下,对计算机系统进行一系列的组装测试和确认测试 14 。住院病人信息管理系统模块较多,功能比较复杂,测试需要很长的时间,下面选取核心功能模块进行测试。并列出测试用例和测试结果。5.
44、1登陆模块测试登陆模块测试主要测试是当用户输入不同的用户名和密码组合时系统能否给出的正确的提示信息。下表是测试用例和结果:表5-1 登陆模块测试用例表用例编号输入数据输出结果预期结果正确否1用户名:admin密码: 111111“密码有误”“密码有误”正确2用户名:admin密码: 123456跳转到主界面跳转到主界面正确3用户名:admines密码:123456“用户名不存在”“用户名不存在”正确4用户名:11 or 1=1密码: 空系统出错系统出错正确5用户名:空密码:空“用户名不存在”“用户名不存在”正确5.2添加用户模块测试添加用户模块测试主要测试是当添加的用户信息不完整或有误时,看系统能否正确的做出相应的反应。下表是测试用例和结果:表5-2 添加用户模块测试用例表用例编号输入数据输出结果预期结果正确否1用户名:空密码: 111111身份:医生“用户名不能为空”“用户名