羅其敏 陳小榮 梁家芳 莫莉華 韋仲鋒
【摘 要】隨著數字化時代的迅速發展,醫院想緊跟時代發展的步伐和潮流,也需要實現醫院全面的信息化管理, 為病人提供便捷的信息化服務。為此,設計了基于JSP的醫院管理系統,利用了JSP、Druid數據庫連接池、3DES加密技術和分層設計的思想實現了醫院管理系統的設計。該系統具有對用戶、醫生、藥品等信息的管理功能,有助于提高醫院日常管理的工作效率。
【關鍵詞】JSP;信息管理;Druid;3DES加密
中圖分類號: TP315 文獻標識碼: A 文章編號: 2095-2457(2018)11-0115-003
DOI:10.19694/j.cnki.issn2095-2457.2018.11.048
【Abstract】With the rapid development of the digital age, hospitals want to keep abreast of the pace and trend of The Times, and also need to realize the comprehensive informatization management of hospitals and provide convenient information services for patients. To this end, a jsp-based hospital management system was designed, and the design of the hospital management system was realized by using JSP, Druid database connection pool, 3DES encryption technology and hierarchical design. The system has the function of managing users, doctors, drugs and other information, which can help improve the daily management efficiency of the hospital.
【Key words】JSP;Information management;Druid;3DES encryption
0 前言
為了方便醫院的行政管理與事務處理業務,使醫院的業務操作流程和日常管理規范化。通過該系統簡化信息流程,為醫院查詢信息、分類匯總、統計、決策分析提供準確的數據,減少人工傳送記賬單產生的錯誤、解決病人查賬困難、方便對醫療活動各階段中產生的數據進行采集、存貯、處理、提取、傳輸、匯總、加工生成的有效信息等。本系統主要運用于醫院信息管理,按照醫院工作的業務流程,運用現代管理理論和方法,對醫療活動各階段中產生的數據進行采集、存貯、處理、提取、傳輸、匯總、加工生成的有效信息等。
1 需求分析
(1)通過對醫院運轉流程的仔細分析調查,為了使用戶獲得更好的用戶體驗并提高醫院管理的效率,本系統包括醫院概況、新聞動態、醫師介紹、患者服務四大前臺功能模塊和門診預約掛號、門診管理、藥品管理三大后臺功能模塊。以下為開發本系統設計的E-R圖如圖1以及需要實現的功能需求描述:
(2)醫師:醫師可以注冊登錄本系統進行查詢修改自己的信息、查詢自己的病人信息及查詢修改自己開的藥單信息,并根據患者的掛號信息可以給患者開藥方。
(3)患者:患者可以注冊登錄本系統進行查詢修改自己的信息、查詢醫師信息及個人藥單信息等,并且可以在本系統掛號。
(4)藥劑師:藥劑師可以注冊登錄本系統,可以查詢個人信息,修改密碼,增加藥品,修改藥品信息,查詢所有藥品信息,下架不需要使用的藥品,查看病人藥單為病人抓藥。
(5)管理員:查詢所有的醫師信息,并可以把其信息移除,以及設置其請假狀態,查詢所有的病人,藥劑師信息,刪除他們的信息。
2 系統設計
2.1 系統結構設計
本系統設計的是醫院管理網站,采用了MVC模式和多層架構方法來搭建,共設置表現層、業務邏輯層、數據訪問層和實體層四層。表現層中用MVC模式來設計,Model模塊里存放一些屬性和簡單數據,Controller模塊里存放對各個頁面的控制方法,View模塊里存放網站的各個頁面,各模塊各司其職,實現有效分工[1]。系統的表現層完成對數據的展現、用戶數據接收等功能,主要用JSP實現,HTML用來表達頁面展現的格式[2],JavaScript用于交互時的數據檢查,需要用戶完成的一些功能。業務邏輯層里存放對數據層的邏輯操作,數據訪問層里存放對數據庫的操作與維護,實體層里存放對各個實體屬性的定義[1]。
2.2 數據庫設計
通過分析得知,醫院管理系統數據庫主要包括9張表,數據庫包括如下幾個實體:醫師,患者,掛號單,藥品,藥單,科室,職位,管理員,藥劑師。系統的后臺數據庫采用MySql 5.7來創建,用Navicat作為可視化工具。所設計的數據庫如圖2所示。
3 系統的實現
21世紀是我們經濟社會快速發展的時代,醫院管理系統網站的實現,使用的編程工具是eclipse,數據庫是MySql,語言是java,服務器是tomcat8.0,平臺是Window10系統。實現的功能模塊有:如圖3所示
系統的登陸界面如圖4:包括用戶名、密碼、選擇相應的用戶及類型進行登陸或注冊,以及填寫驗證碼,用戶根據自己的權限登錄,登陸后進入不同的主界面,驗證碼書寫錯誤也會有相應的提示。
對于不用的用戶,他們的注冊界面也不同,因此,用戶注冊時需要選取相應的注冊項,注冊信息填寫完后,點擊注冊即可注冊成功并把信息添加到數據庫中,跳轉到登陸界面,即可使用剛剛注冊的用戶登錄我們的系統。此頁面如果你兩次密碼輸入不一致,也會有密碼書寫不一致的提示。
4 關鍵技術
該系統已在Windows 7操作系統環境下,采用JDK1.8、MYSQL5.7數據庫,并再Tomcat9.0 Web服務器下進行開發調試。系統實現的關鍵技術包括:
(1)Druid數據庫連接池
Druid是目前最好的數據庫連接池,在功能、性能、擴展性方面,都超過其他數據庫連接池,它可以監控數據庫訪問性能,Druid內置提供了一個功能強大的StatFilter插件,能夠詳細統計SQL的執行性能,這對于線上分析數據庫訪問性能有幫助。本系統分別有管理員、藥劑師、醫生、患者、藥品的數據,數據量比較大,因而在數據庫連接上采用了Druid數據庫連接池,一定程度上提高了本系統用戶對數據訪問的性能。
(2)3DES加密技術
作為開發者,編寫安全的代碼比編寫優雅的代碼更重要,因為安全是一切應用之根本[3]!為了提高系統對用戶信息的安全性,本系統采用了數據庫加密技術,即所有用戶設置的密碼都是被加密后才存入數據庫,在數據庫中看到的用戶密碼全是密文。
(3)驗證碼
驗證碼是在開發中比較常用到有效防止對某一個特定注冊用戶用特定程序暴力破解方式進行不斷的登陸嘗試的方式[4]。首先定義String codes = “012345678
9ABCDEFGHIJKLMNOPQRSTUVWXYXZ”,隨機選取4個字符構成驗證碼,本系統驗證碼的實現是不區分大小寫的,因為如果是大寫的,就會先被轉化為小寫字母;然后獲取隨機生成的顏色,畫出隨機線條生成背景底。最后選取4個字符進行旋轉、伸縮后再單個單個繪制;生成4字符驗證碼。
(4)MVC模式
MVC 是模型(Model)、視圖(View)和控制器(Controller)的寫,其目的是實現 Web系統的職能分工[1]。其中 Model 層實現系統中的業務邏輯,通常可以用 JavaBean 或 EJB 來實現;View 層用于與用戶的交互,通常用 JSP 來實現;Controller 層是 Model 與 View之間溝通的橋梁,它可以分派用戶的請求并選擇恰當的視圖以便用于顯示,同時它也可以解釋用戶的輸入并將它們映射為模型層可執行的操作。本系統采用 MVC 模式的管理使得代碼分工明確,降低耦合度。每個層次的實現都是獨立的,不需關心其他層次的具體實現,只需要關心數據的流動,大大提高了開發的工作效率。
5 結束語
本文根據醫院信息管理以及醫院的業務流程的特點,利用JSP+JavaBean+Servlet技術和分層的設計思想實現了醫院信息管理平臺的設計,其結構清晰、性能可靠、使用方便,而且具有非常強的可重用性、可維護性和可擴展性。有效的解決了患者掛號難、查賬困難,藥劑師對藥品管理混亂等問題,減少了人工傳送記賬單產生的錯誤,方便對醫療活動各階段中產生的數據進行采集、存貯、處理、提取、傳輸、匯總、加工生成的有效信息,極大地提高了醫院的總體工作效率。
【參考文獻】
[1]高群霞.基于MVC模式和多層架構的電子商務網站設計與實現[J].廣東,2017年,第1期:56:58
[2]郭麗.基于JSP的學生就業信息管理系統的設計與實現[J].北京信息職業技術學院, 2013年,第3期:67:68
[3]梁棟.Java加密解密的藝術[M].機械工業出版社,2010: 2
[4]ljheee,Web用戶登錄-驗證碼的設計與實現.CSDN博客.2017-.05-29. https://blog.csdn.net/ljheee/article/details/72799746.