基于SSH的医院管理系统的设计与实现

2016-04-11 13:42张亚萍吕琼帅
电脑知识与技术 2016年4期

张亚萍+吕琼帅

摘要:为了使医院的管理实现信息化和智能化,采用了基于Struts2、Hibernate和Spring的框架(SSH)技术及基于MySql的后台数据库技术,设计并实现了符合医院管理流程的基于SSH的医院管理系统,同时给出了该管理系统的部分程序代码。

关键词:Struts2;Hibernate;Spring;医院管理系统;MySql

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2016)04-0027-02

Design and Implementation of Hospital System Based on SSH

ZHANG Ya-ping1, LV Qiong-shuai2

(1.Luoyang cental hospital, Luoyang 471000, China; 2.Software College, Pingdingshan University, Pingdingshan 467000, China)

Abstract: In order to make the management of the hospital to realize informatization and intelligence,In this paper, based on the framework of Struts2, Hibernate and SSH (Spring) technology and MySql based database technology, design and implementation of the hospital management process based on SSH hospital management system. At the same time, the part of the program code of the management system is given.

Key words: Struts2; Hibernate; Spring; hospital management system; MySql

1 背景

随着社会的发展,人们的生活水平不断地提高,计算机技术和信息技术的不断发展,使得信息技术在医院的宣传、管理、医疗等方面得到了广泛的应用,所以基于信息化、智能化的医院管理系统也应运而生。为了提高医院的运行效率和实现医院管理的智能化和信息化建设,充分利用现代科技发展的成果,所以,设计并开发出一套规范的管理平台,能够有效提高医院的服务和管理水平。

2 医院管理平台的需求分析及系统功能

2.1 需求分析

通过对现有医院管理模式的研究与分析及客户对平台的需求,该系统采用B/S模式,分为前台模块和后台信息管理模块。前台宣传模块主要包括医院的相关信息,医生信息,挂号信息浏览,在线预约、在线留言,查看案例等内容;后台信息管理主要包括病人信息管理、医院科室信息管理、医生在线管理、诊断和处方信息管理、缴费管理和账户管理等六个管理模块。另外,系统所面向的主要用户有一般用户、注册用户、科室管理员、系统管理员。一般用户可以浏览医院相关信息,通过注册可以成为注册用户;注册用户可以在网上进行挂号、预约、留言等功能;科室管理员和系统管理员都是属于管理员级别的用户,科室管理员主要是对本科室内部的医疗人员及日常事务进行管理,系统管理员则主要负责该平台的日常运行维护等工作。

2.2 系统功能

根据医院的日常业务运行流程及系统的需求分析可以确定该系统主要包含以下几个功能:

1)日常信息管理功能。该功能主要包括显示和查看医疗人员信息管理、科室信息,同时还要对疾病的治疗方法及常识进行介绍。

2)诊断管理功能。该功能主要包含查看病历和处方信息,以及对病历和处方进行修改、增加和删除操作。

3)缴费管理功能。该功能主要是对医生所开的处方及药物进行下单和病人的缴费管理,包括处方查询,完成病人缴费拿药等基本操作。

3 医院管理系统的设计

3.1 框架设计及技术分析

经过对医院日常的业务逻辑和功能的划分,在进行系统设计时,采用了MVC三层架构设计,将管理系统的输入、处理和输出分开,把整个应用程序分成三个核心模块模型、视图和控制器。其中,模型可以表示业务数据和业务逻辑。表示业务数据的模型称为状态模型,它定义当前值的集合;表示业务逻辑的模型称为动作模型,它修改状态模型的状态,是控制器与状态模型交互的中间层。视图并不会去处理数据,它主要是向用户显示相关的信息并接收和处理用户的请求,还可以接收模型发出的数据更新及修改、删除事件,从而对用户的界面进行同步的更新,同时还可以向模型查询业务状态,但是视图不能修改模型。当系统用户提交用户的请求来向系统发送表单数据时,该请求会由控制器接收,并进行处理,调用相应的系统组件,最后会用相应的视图显示出请求处理的结果。控制器除了接收请求,还会负责一些底层的工作,比如转发控制请求和显示新的Web页面的处理结果。

本系统中,主要的业务逻辑处理交由SSH框架中的Struts组件来完成,Struts组件可以将视图与业务逻辑进行相互的分离,这样拦截所有用户的请求交由控制器来负责,如果用户请求与系统配置文件的中配制一致,则将该请求交给Struts组件完成。而用户的Action类的各实例交由业务逻辑层控制器完成,通过对该实例的处理返回一个ActionForward,用来确定返回的页面。模型角色存放在com.hospital.bean包中,视图文件存放在Hospital文件夹中,com.hospital.action中的java文件充当控制器的角色,负责处理用户请求、创建JSP页面需要使用的Java Bean对象、根据用户的请求选择合适的JSP页面返回给用户。

3.2 数据库设计

数据库概念结构设计的目标是产生反映全组织信息需求的整体数据库概念结构。数据库设计的主要任务是将上述需求分析过程中得到的信息转化为计算机可以处理的信息,是一个数据抽象的过程,也是平台设计的重点。本系统选用MySql作为系统的后台数据库的数据。如图1所示,本系统平台的E-R图。

其中在数据库中添加用户信息的核心代码如下:

public String saveCommon() throws IOException{

if(common.getCadress().trim().length()==0||common.getCage().trim().length()==0||common.getCbirthday().trim().length()==0||common.getCeducation().trim().length()==0||common.getCemail().trim().length()==0||common.getCname().trim().length()==0||common.getCoffice().trim().length()==0||common.getCpost().trim().length()==0||common.getCsex().trim().length()==0||common.getCtel().trim().length()==0||common.getCworkid().trim().length()==0||uploadFileName==null)

{

ServletActionContext.getRequest().setAttribute("msg", "所有表单都为必填项,不能为空!");

return "commonInput";

}

else{

Common common1= adminService.getCommonByworkid(

common.getCworkid());

if(common1!=null){

ServletActionContext.getRequest().setAttribute("msg", "工号已存在,请重写!");

return "commonInput";

}

else{

String path= ServletActionContext.getServletContext().

getRealPath("/Employee");

File file =new File(path+"/"+uploadFileName);

FileUtils.copyFile(upload, file);

File reFile=new File("/Hospital/Employee/"+uploadFileName);

common.setCphoto(reFile.toString());

adminService.saveCommon(common);

return "commonSuccess";

}

}

}

4 医院管理系统的规划

5 结束语

该文本文以SSH框架为平台,根据医院管理系统的需求分析,设计了一个基于SSH的医院管理系统,并给出了该系统的整体网络规划。该系统在一定程度上能够满足医院现实的业务需求,基本达到了预期的设计目标,对医院实现信息化管理起到了一定的推动作用。

参考文献:

[1] 万明, 李娟娟. 基于Android的社区信息管理系统的设计与实现[J]. 电脑知识与技术, 2014, 10(3): 561-563.

[2] 张宗耀. 计算机网络与办公自动化[M]. 西安: 西安电子科技大学出版社, 2003.

[3] 邹竹彪. JSP宝典[M]. 北京: 电子工业出版社, 2007.

[4] 刘中兵. 开发者突击:Java Web主流框架整合开发[M]. 北京: 电子工业出版社, 2009.

[5] 孙卫琴. 精通Hibernate[M]. 北京: 电子工业出版社, 2005.

[6] 李淑娟, 李言. 基于JSP的合同管理系统开发[J]. 计算机工程, 2004, 30(24): 147-149.

[7] 朱少民. 软件测试方法和技术[M]. 北京: 清华大学出版社, 2010.