醫(yī)院門診查詢系統(tǒng)畢業(yè)設計_第1頁
已閱讀1頁,還剩40頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、<p>  基于JavaEE的醫(yī)療門診查詢系統(tǒng)分析與設計</p><p><b>  摘要</b></p><p>  隨著計算機技術(shù)的發(fā)展和進步,計算機應用已經(jīng)涉及到人們生活的各個方面。醫(yī)療門診查詢預約系統(tǒng)是通過分析一個醫(yī)院門診系統(tǒng),把數(shù)據(jù)庫,Servlet,Bean,JSP整合在一起,從而實現(xiàn)一個從信息收集,處理到查詢的完整的處理方案。該系統(tǒng)集合了患者管

2、理,醫(yī)生管理,以及病歷管理的綜合性應用軟件。在該系統(tǒng)中,患者可以不用在醫(yī)院里面排很長的隊伍掛號,只要在門診系統(tǒng)的頁面上選擇自己喜歡的醫(yī)生進行預約看病。這樣不僅方便了患者,也方便了醫(yī)生更容易查閱病歷和患者資料。更進一步方便了醫(yī)院的門診管理,符合信息化時代的軟件應用潮流。</p><p>  本系統(tǒng)是基于J2EE的設計方案,使用表示層,邏輯層和數(shù)據(jù)層三層模式。使用B/S模式,大大減低了服務端的數(shù)據(jù)處理任務。提供了高性

3、能的處理速度,降低數(shù)據(jù)庫的運行時的開銷。使用MS SQL Server 2000作為數(shù)據(jù)庫,Tomcat作為JSP容器。數(shù)據(jù)庫層使用JDBC與底層數(shù)據(jù)庫進行交互,邏輯層封裝在Java類中,表示層由JSP實現(xiàn)。</p><p>  關(guān)鍵詞:B\S模式;JSP;Enterprise JavaBean;三層模式;JDBC</p><p><b>  目 錄</b><

4、/p><p>  第一章 緒 論1</p><p><b>  1.1 引 言1</b></p><p><b>  1.2 概 述2</b></p><p>  1.3 J2EE概述3</p><p>  第二章 系統(tǒng)運行必要的環(huán)境7</p>

5、<p>  2.1 JSP運行環(huán)境的要求7</p><p>  2.1.1 對硬件條件和操作系統(tǒng)的要求7</p><p>  2.1.2 對軟件環(huán)境的要求7</p><p>  2.2 安裝和配置JDK8</p><p>  2.3 安裝和配置Tomcat9</p><p>  2.4 Micr

6、osoft SQL Server 的配置11</p><p>  第三章 系統(tǒng)分析與設計13</p><p>  3.1 系統(tǒng)功能分析13</p><p>  3.2 系統(tǒng)設計思想14</p><p>  3.2.1 數(shù)據(jù)庫層-邏輯層-表示層三層結(jié)構(gòu)14</p><p>  3.2.2 角色模塊設計-

7、設計模式14</p><p>  3.2.3 與數(shù)據(jù)庫的連接14</p><p>  3.2.4 日志記錄15</p><p>  3.3 系統(tǒng)模塊分析15</p><p>  3.4 業(yè)務流程16</p><p>  第四章 系統(tǒng)實現(xiàn)與詳細設計17</p><p>  4.1

8、 數(shù)據(jù)庫設計17</p><p>  4.1.1 設計思路17</p><p>  4.1.2 表的設計18</p><p>  4.1.3 表關(guān)系圖22</p><p>  4.2 邏輯層的設計23</p><p>  4.2.1 邏輯層包結(jié)構(gòu)設計23</p><p>  

9、4.2.2 與數(shù)據(jù)庫建立連接類DBConnection25</p><p>  4.2.3 用戶角色類27</p><p>  4.3 表達層設計28</p><p>  4.3.1 表達層設計概述28</p><p>  4.3.2表達層設計中使用的幾大JSP對象29</p><p>  4.4 系

10、統(tǒng)功能實現(xiàn)與演示30</p><p>  第五章 設計總結(jié)35</p><p><b>  參考文獻36</b></p><p><b>  致謝37</b></p><p><b>  附錄A 開題報告</b></p><p>  附錄B 外

11、文資料原文</p><p>  附錄C 外文資料譯文</p><p><b>  附錄D 源程序代碼</b></p><p>  第一章 緒 論</p><p><b>  1.1 引 言</b></p><p>  管理信息系統(tǒng)(Management Informat

12、ion System)簡稱MIS,是一個由人,計算機及其他外圍設備等組成的能進行信息的收集、傳遞、存儲、加工、維護和使用的系統(tǒng),是一門新興的科學,其主要任務是最大限度的利用現(xiàn)代計算機及網(wǎng)絡通信技術(shù)加強企業(yè)的信息管理,通過對企業(yè)擁有的人力、物力、財力、設備、技術(shù)等資源的調(diào)查了解、建立正確的數(shù)據(jù),加工處理并編制成各種信息資料及時提供給管理人員,以便進行正確的決策,不斷提高企業(yè)的管理水平和經(jīng)濟效益。目前,企業(yè)的計算機網(wǎng)絡已成為企業(yè)進行技術(shù)改造

13、及提高企業(yè)管理水平的重要手段。隨著我國與世界信息高速公路的接軌,企業(yè)通過計算機網(wǎng)絡獲得信息必將為企業(yè)帶來巨大的經(jīng)濟效益和社會效益,企業(yè)的辦公及管理都將朝著高效、快速、無紙化的方向發(fā)展。MIS系統(tǒng)通常用于系統(tǒng)決策,例如,可以利用MIS系統(tǒng)找出目前迫切需要解決的問題,并將信息及時反饋給上層管理人員,使他們了解當前工作發(fā)展的進展或不足。換句話說,MIS系統(tǒng)的最終目的是使管理人員及時了解公司現(xiàn)狀,把握將來的發(fā)展路徑。</p>&l

14、t;p>  傳統(tǒng)的MIS系統(tǒng)的核心是C/S(Client/Server——客戶端/服務器)架構(gòu),而基于Internet的MIS系統(tǒng)的核心是B/S(Browser/Server——瀏覽器/服務器)架構(gòu)。B/S架構(gòu)比起C/S架構(gòu)有著很大的優(yōu)越性,傳統(tǒng)的MIS系統(tǒng)依賴于專門的操作環(huán)境,這意味著操作者的活動空間受到極大限制;而B/S架構(gòu)則不需要專門的操作環(huán)境,在任何地方,只要能上網(wǎng),就能夠操作MIS系統(tǒng),這其中的優(yōu)劣差別是不言而喻的?;?/p>

15、Internet上的MIS系統(tǒng)是對傳統(tǒng)MIS系統(tǒng)概念上的擴展,它不僅可以用于高層決策,而且可以用于進行普通的商務管理。通過用戶的具名登錄(或匿名登錄),以及相應的權(quán)限控制,可以實現(xiàn)在遠端對系統(tǒng)的瀏覽、查詢、控制和審閱。隨著Internet的擴展,現(xiàn)有的公司和學校不再局限于物理的有形的真實的地域,網(wǎng)絡本身成為事實上發(fā)展的空間?;贗nternet上的MIS系統(tǒng),彌補了傳統(tǒng)MIS系統(tǒng)的不足,充分體現(xiàn)了現(xiàn)代網(wǎng)絡時代的特點。隨著Internet

16、技術(shù)的高速發(fā)展,因特網(wǎng)必將成為人類新社會的技術(shù)基石?;贗nternet的MIS系統(tǒng)必將成為網(wǎng)絡時代的新一代管理信息系統(tǒng),前景極為樂觀[7</p><p><b>  1.2 概 述</b></p><p>  隨著計算機技術(shù)的發(fā)展和進步,計算機應用已經(jīng)涉及到人們生活的各個方面。軟件行業(yè)的興起,各個單位為了提高生產(chǎn)效率,降低生產(chǎn)成本,很多由人來管理的工作都由計算機來完

17、成。醫(yī)療門診查詢預約系統(tǒng)是通過分析一個真正的醫(yī)院門診系統(tǒng),運用信息技術(shù),結(jié)合軟件工程,利用數(shù)據(jù)庫和一些編程語言設計,從而實現(xiàn)一個從信息收集,處理到查詢的完整的處理方案。該系統(tǒng)集合了患者管理,醫(yī)生管理,以及病歷管理的綜合性應用軟件。現(xiàn)實中,很多病患在就醫(yī)看病的時候都苦惱于大醫(yī)院的掛號隊伍,因為掛號排隊延誤病情治療的事情也時有發(fā)生,也有很多病患想了解專家門診的醫(yī)生情況和經(jīng)驗,來選擇自己的就醫(yī)方向,很多病患不能提前知道該專家醫(yī)生的就醫(yī)時間而延

18、誤病情的事和打亂自己的就醫(yī)安排也是存在的。在該系統(tǒng)中,患者可以不用在醫(yī)院里面排很長的隊伍掛號,只要在門診系統(tǒng)的頁面上選擇自己喜歡的醫(yī)生進行預約看病。在系統(tǒng)中沒個醫(yī)生都有自己的看病時間表,病患可以通過醫(yī)生的時間表來選擇自己的就醫(yī)時間,方便患者安排時間,這樣就方便了患者,而醫(yī)生也可以通過系統(tǒng)查詢到預約自己的病患的基本情況,為治療做好前期準備,為醫(yī)生成功治療病患打下基礎,這樣方便了醫(yī)生更容易查閱病歷和患者</p><p&g

19、t;  本系統(tǒng)使用MS SQL Server 和 Tomcat,其中Tomcat是開源軟件,可以從網(wǎng)上免費得到其正式的發(fā)行版本,而MS SQL Server 是當前使用得最廣泛的數(shù)據(jù)庫,其性能,安全性等方面都有很好的保證。Tomcat雖然是開源軟件,但許多大型網(wǎng)站也因其穩(wěn)定的性能和出色的性能而選擇它作為專業(yè)的JSP容器。由這兩者組成的整個系統(tǒng)的底層框架,既能節(jié)省開支,配置過程也相對簡單。</p><p>  服務

20、器端使用三層體系結(jié)構(gòu),將業(yè)務邏輯從表示層中抽出,使頁面,業(yè)務邏輯和數(shù)據(jù)庫開發(fā)互相獨立,并行地進行,這樣可以大大減少開發(fā)時間。同時這種設計方法降低了三層之間的耦合層度,日后對某一層的修改,擴充時,對其他層可以只產(chǎn)生很小的影響[4]。</p><p>  使用面向?qū)ο蠹夹g(shù),將各個角色(醫(yī)生,患者,管理員)封裝成類,這樣能幫助程序員更直觀地去理解整個業(yè)務流程,將重點放在業(yè)務邏輯的處理上,降低了開發(fā)難度,這樣也便于將來的

21、擴展。</p><p>  而且該系統(tǒng)的一些亮點:</p><p> ?。?)在邏輯層實現(xiàn)了一個簡單的日志記錄系統(tǒng),可以將任何信息記錄到指定的日志文件中,方便服務器程序的跟蹤和調(diào)試,同時可以記錄一些重要的事物信息(比如管理員登陸,重要信息的刪除等),以便將來需要是查詢。</p><p> ?。?)邏輯層實現(xiàn)時使用事務(Transaction)保證數(shù)據(jù)的完整性。<

22、;/p><p> ?。?)服務器端采用數(shù)據(jù)庫,事務邏輯,用戶截面相互獨立的結(jié)構(gòu),各個模塊自身擴充方便,且互相之間耦合度非常低,對邏輯層稍做擴充就可以實現(xiàn)一個功能更完善的系統(tǒng)。</p><p>  (4)使用單例模式(Singleton Design Pattern)設計邏輯層,大大降低數(shù)據(jù)庫運行的開銷。</p><p>  總體來說,本系統(tǒng)是基于J2EE的設計方案,使用

23、表示層,邏輯層和數(shù)據(jù)層三層模式。使用B/S模式,使用MS SQL Server作為數(shù)據(jù)庫,Tomcat作為JSP容器。數(shù)據(jù)庫層使用JDBC與底層數(shù)據(jù)庫進行交互,邏輯層封裝在Java類中,表示層由JSP實現(xiàn)。</p><p>  1.3 J2EE概述</p><p>  JSP技術(shù)是由Servlet技術(shù)發(fā)展起來的,自從有了JSP后,在Java服務器端編程中普遍采用的就是JSP,而不是Serv

24、let。因為JSP在編寫表示頁面時遠遠比Servlet簡單,并且不需要手工編譯,目前Servlet主要用于做視圖控制器,處理后臺應用等。由于JSP構(gòu)建在Servlet上。所以它有Servlet所有強大的功能[1]。</p><p>  在傳統(tǒng)的網(wǎng)頁HTML文件(*.htm,*.html)中加入Java程序片段(Scriptlet)和JSP標記,就構(gòu)成了JSP網(wǎng)頁(*.jsp)。</p><p&

25、gt;  JSP基于強大的Java語言,具有良好的伸縮性,與Java Enterprise API緊密地集成在一起,在網(wǎng)絡數(shù)據(jù)庫應用開發(fā)領(lǐng)域具有得天獨厚的優(yōu)勢,基于Java平臺構(gòu)建網(wǎng)絡程序已經(jīng)被越來越多的人認為是未來最有發(fā)展前途的技術(shù)[1]。</p><p>  從JSP這幾年的發(fā)展來看,JSP已經(jīng)獲得了巨大的成功,它通過和EJB等J2EE組件進行集成,可以編寫出處理具有大的伸縮性,高負載的企業(yè)級應用。JSP技術(shù)

26、在多個方面加速了動態(tài)Web頁面的開發(fā)。</p><p>  通過分析和總結(jié),列出了以下幾點說明JSP的特點。</p><p>  (1)將內(nèi)容的生成和顯示進行分離</p><p>  使用JSP技術(shù),Web頁面開發(fā)人員可以使用HTML或者XML標識來設計和格式化最終頁面。使用JSP標識或者小腳本來生成頁面上的動態(tài)內(nèi)容。生成內(nèi)容的邏輯被封裝在標識和JavaBean組件

27、中,并且捆綁在小腳本中,所有的腳本在服務器端運行。如果核心邏輯被封裝在標識和Bean中,那么其他人,如Web管理人員和頁面設計者,能夠編輯和使用JSP頁面,而不影響內(nèi)容的生成。</p><p>  在服務器端,JSP引擎解釋JSP標識和小腳本中,生成所請求的內(nèi)容,并且將結(jié)果以HTML頁面的形式發(fā)送回瀏覽器。這有助于作者保護自己的代碼,而又保護任何基于HTML的Web瀏覽器的完全可用性。</p>&l

28、t;p> ?。?)生成可重用的組件</p><p>  絕大多數(shù)JSP頁面依賴于可重用的,跨平臺的組件來執(zhí)行應用程序所要求的更為復雜的處理。開發(fā)人員能夠共享和交換執(zhí)行普通操作的組件,或者使用這些組件為更多的使用者或者客戶團體所使用?;诮M件的方法加速了總體開發(fā)過程,并且使得各種組織在他們現(xiàn)有的技能和優(yōu)化結(jié)果的開發(fā)努力中得到平衡。</p><p> ?。?)采用標識簡化頁面開發(fā)<

29、/p><p>  Web頁面開發(fā)人員不一定都熟悉腳本語言的編程人員。JavaServer Page技術(shù)封裝了許多功能,這些功能是在易用的,與JSP相關(guān)的XML標識中進行動態(tài)內(nèi)容生成是所需要的。標準的JSP標識能夠訪問和實例化JavaBean組件,設置或者檢索組件屬性,下載Applet,以及執(zhí)行同其他方法更難于編碼或耗時的功能。</p><p>  通過開發(fā)定制標識庫。這使得Web頁面開發(fā)人員能

30、夠使用熟悉的工具和如同標識一樣執(zhí)行特定功能的構(gòu)件來工作。</p><p> ?。?)JSP能提供所有的Servlets功能</p><p>  與Servlet相比,JSP能提供所有的Servlets功能,它比用Println書寫和修改HTML更加方便。此外,您可以更明確地進行分工,Web頁面設計人員編寫HTML,只需要留出空間讓Servlets程序員插入動態(tài)部分即可。</p>

31、<p> ?。?)健壯的存儲管理和安全性</p><p>  由于JSP頁面內(nèi)置腳本語言是基于Java編程語言的,而且所有的JSP頁面都被編譯成為Java Servlet,JSP頁面就具有Java技術(shù)的所有優(yōu)點,包括健壯的存儲管理和安全性。</p><p> ?。?)一次編寫,隨處運行</p><p>  作為Java平臺的一部分,JSP擁有Java編

32、程語言“一次編寫,隨處運行”的特點。隨著越來越多的供應商將JSP支持添加到他們的產(chǎn)品中,您可以使用自己所選擇的服務器和工具,但并不影響當前的應用。</p><p> ?。?)JSP的平臺適應性更廣</p><p>  這是JSP與ASP的優(yōu)越之處。幾乎所有的平臺都支持Java,JSP+Beans,它們可以在任何平臺下通行無阻。Windows NT下的IIS通過一個插件就能支持JSP,例如J

33、RUN或者ServletExec,著名的Web服務器Apache已經(jīng)能夠支持JSP。由于Apache廣泛應用在Windows NT,UNIX和Linux上,因此JSP有更廣泛的運行平臺。從一個平臺移植到另一個平臺,JSP和JavaBeans甚至不用重新編譯,因為Java字節(jié)碼都是標準的字節(jié)碼,與平臺無關(guān)。</p><p>  (8)Java中連接數(shù)據(jù)庫的技術(shù)是JDBC</p><p>  

34、很多數(shù)據(jù)庫系統(tǒng)帶有JDBC驅(qū)動程序,Java程序通過JDBC驅(qū)動程序與數(shù)據(jù)庫相連,執(zhí)行查詢,提取數(shù)據(jù)等操作。Sun公司還開發(fā)了JDBC-ODBC Bridge,用此技術(shù)Java程序就可以訪問帶有ODBC驅(qū)動程序的數(shù)據(jù)庫,目前大多數(shù)數(shù)據(jù)庫系統(tǒng)都帶有ODBC驅(qū)動程序,所以Java程序能夠訪問如Oracle,Sybase,MS SQL Server和MS Access等類型的數(shù)據(jù)庫。</p><p><b>

35、 ?。?)簡單易學</b></p><p>  隨著JSP 2.0中標簽語言的出現(xiàn),即使不懂Java的程序員也能編寫出功能完善的JSP應用[2]。</p><p>  EJB(Enterprise Java Bean,企業(yè)Bean),是基于Java的服務器端組件架構(gòu)技術(shù)。借助于EJB,開發(fā)者能夠輕松構(gòu)建企業(yè)級的,分布式組件應用。與此同時,在不用自身開發(fā)復雜分布式組件框架的前提下

36、,開發(fā)者能夠開發(fā)架構(gòu)靈活,運行可靠及安全的應用系統(tǒng)。對于服務器端開發(fā)而言,EJB引入了快速應用開發(fā)(Rapid Application Development,RAD)模型。因此,在Java應用服務器提供商提供的分布式基礎框架的基礎上,開發(fā)者能夠快速,輕松地構(gòu)建服務器端組件。EJB的重要設計初衷是保證應用能夠在任一提供商提供的企業(yè)中間件服務上暢行無阻,而且便攜性,可重用性都是一流的。</p><p>  EJB僅

37、僅是J2EE(Java 2 Platform,Enterprise Edition)的組成部分之一。其中,J2EE平臺規(guī)范是由JCP(Java Community Process,Java工業(yè)標準組織)制定。J2EE平臺規(guī)范使命是,提供平臺獨立的,便攜的,多用戶的,安全的,遵循標準的企業(yè)級平臺。而且,它必須基于Java和在服務器端的部署。</p><p>  J2EE只是規(guī)范,不是產(chǎn)品。J2EE規(guī)范定義了開發(fā)企業(yè)

38、級軟件產(chǎn)品的規(guī)則。J2EE應用服務器供應商需要在他們的J2EE兼容產(chǎn)品中實現(xiàn)J2EE規(guī)范。</p><p>  J2EE是由一套健壯的中間件服務構(gòu)成的,它使得服務器端應用開發(fā)者能夠高效,快樂地開發(fā)應用。為了使開發(fā)者能夠進一步理解J2EE的重要性,列舉出J2EE兼容實現(xiàn)必須提供的一些重要技術(shù)。如EJB,用于XML RPC的Java API,Java遠程方法調(diào)用(RMI)和RMI-IIOP,Java命名和服務接口(J

39、NDI),Java數(shù)據(jù)庫連接(JDBC),Java事務API,Java消息服務,Java Servlet,JSP,Java IDL以及J2EE連接器架構(gòu)(JCA)等。J2EE就是通過以上大量的組件來構(gòu)件一個企業(yè)級的應用[4]。</p><p>  圖1.1 J2EE應用部署場景</p><p>  第二章 系統(tǒng)運行必要的環(huán)境</p><p>  本章主要介紹J

40、SP開發(fā)環(huán)境的搭建。介紹JSP對運行環(huán)境的要求。講述JSP開發(fā)和運行環(huán)境的安裝配置,并且介紹當今流行的JSP運行環(huán)境的安裝和配置,以及集成開發(fā)環(huán)境的設置以及數(shù)據(jù)庫的安裝和配置。</p><p>  2.1 JSP運行環(huán)境的要求</p><p>  2.1.1 對硬件條件和操作系統(tǒng)的要求</p><p>  JSP環(huán)境對硬件要求不是很高,所以開發(fā)成本比較低,比如CP

41、U只要求使用586或更高級別的處理器;內(nèi)存大概64MB及其以上水平,如果使用WebLogic或者WebSphere配置要求256MB以上;硬盤大概500MB以上,根據(jù)不同的服務器要求不同,如果使用WebLogic或者WebSphere則要求硬盤空間大概1GB空間;當然機器還要配置適合通信的網(wǎng)卡,畢竟JSP是網(wǎng)絡通信與信息技術(shù)的媒介。</p><p>  由于Java具有跨平臺的特點,所以只要能夠安裝JDK,就能在

42、此安裝JSP服務器。JSP服務器能夠運行在目前絕大多數(shù)的操作系統(tǒng)上,目前在普通用戶中用到的系統(tǒng)絕大多數(shù)為Windows系列和UNIX系列[11]。</p><p>  2.1.2 對軟件環(huán)境的要求</p><p>  要使用JSP,在服務器端和客戶端都必須有對應的運行環(huán)境。服務器端主要是Servlet兼容的Web服務器,客戶端主要是瀏覽器。</p><p>  表

43、2-1 對軟件環(huán)境的要求</p><p><b>  續(xù)表2-1</b></p><p>  2.2 安裝和配置JDK</p><p>  JDK中包含了Java開發(fā)中必需的工具和Java程序運行環(huán)境(JRE)??梢詮腟UN公司網(wǎng)站http://java.sun.com免費下載JDK1.4.2。</p><p>  J

44、DK的安裝特別簡單,和安裝應用程序軟件沒什么區(qū)別,不過JDK的安裝路徑一定要設好,方便以后環(huán)境變量的設置。</p><p>  安裝好JDK后,還需要在環(huán)境變量中進行對應的配置。就以本次畢業(yè)設計為例。JDK安裝在D:\j2sdk1.4.2。</p><p><b>  主要進行以下配置:</b></p><p>  (1)設置JAVA_HOME

45、環(huán)境變量</p><p> ?。?)設置CLASSPATH環(huán)境變量</p><p> ?。?)更新PATH環(huán)境變量的值</p><p>  JAVA_HOME表示Java安裝目錄,其他的應用程序如果需要使用Java運行環(huán)境,首先獲得JAVA_HOME變量的信息,然后確定執(zhí)行的路徑。</p><p>  在鼠標右鍵單擊“我的電腦”,在屬性欄的高

46、級選項中可以選擇環(huán)境變量的設置,新建一個系統(tǒng)變量或者用戶變量,名稱為JAVA_HOME,它的值為D:\j2sdk1.4.2。如圖:</p><p>  圖2.1 JAVA_HOME變量設置</p><p>  然后建立一個CLASSPATH的變量,它表示搜索Java類的路徑,這個路徑可以包含一些Jar歸檔文件,也可以是一個目錄。在應用程序執(zhí)行是,往往會動態(tài)地在CLASSPATH中添加一些自

47、己需要的路徑。在本機上CLASSPATH的值為“.;d:\j2sdk1.4.2\lib\tools.jar;d:\j2sdk1.4.2\lib\dt.jar;” (.;一定不能少)。</p><p>  圖2.2 CLASSPATH變量設置</p><p>  當以上都配置好了,我們可以測試下Java環(huán)境是否配置成功。我們可以在[運行]中進入[命令提示符cmd]下面。輸入java –ver

48、sion回車,看是否能看到當前JDK的版本。如果看見就配置成功了[3]。</p><p>  2.3 安裝和配置Tomcat</p><p>  Tomcat服務器是當今使用最廣泛的Servlet/JSP服務器。它運行穩(wěn)定,性能可靠,是學習和中小企業(yè)的最佳選擇,而且是開源程序,下載免費,大大降低系統(tǒng)的開發(fā)成本。</p><p>  我們可以從http://jakar

49、ta.apache.org/tomcat下載Tomcat 5.0 服務器。安裝也很方便。本次設計Tomcat安裝目錄是D:\Tomcat。</p><p>  安裝完成以后,把Tomcat里面的類包(*.jar文件)包含到環(huán)境變量的CLASSPATH里面。這些Jar文件都在D:\Tomcat\common\lib目錄下。</p><p>  然后運行Tomcat程序,啟動Tomcat。在I

50、E中,輸入http://127.0.0.1:8080或者http://localhost:8080。如果出現(xiàn)Tomcat的歡迎頁面,就表示Tomcat的安裝和配置是正確的。</p><p>  圖2.3 測試Tomcat是否安裝成功</p><p>  當Tomcat配置成功以后,就要在%Tomcat%目錄下的webapps下面建立一個虛擬目錄,來方便將來程序的開發(fā)。本次設計是醫(yī)院門診系統(tǒng)

51、,所以我們在webapps下面新建立一個叫hospital的文件夾,然后使用Tomcat Administrator tools來建立關(guān)于hospital的虛擬目錄。這樣以后我們的程序就可以在hospital文件夾下面進行,當設計完成以后,只要在IE里面輸入http://localhost:8080/hospital就可以看到你所設計的系統(tǒng)程序的實現(xiàn)了[3]。</p><p>  圖2.4 Tomcat Admi

52、nistrator tool頁面和hospital的虛擬目錄</p><p>  2.4 Microsoft SQL Server 的配置</p><p>  本節(jié)不對SQL Server的安裝做過多的贅述,本節(jié)介紹如何讓SQL Server能加入到JSP運行的集成環(huán)境中來。</p><p>  當安裝好SQL Server程序之后,由于JSP要與SQL Serve

53、r集成,進行對數(shù)據(jù)庫的操作,就必須下載Microsoft SQL Server 2000 Driver for JDBC的驅(qū)動,微軟的官方網(wǎng)站提供免費下載。安裝該程序之后,把安裝目錄里面\lib\下面的3個驅(qū)動jar文件拷貝到你所開發(fā)的JSP程序目錄下面的WEB-INF文件夾下面的lib文件夾下。這3個文件分別是:mssqlserver.jar;msbase.jar;msutil.jar。然后在環(huán)境變量的CLASSPATH變量里面包含這

54、3個文件的初試路徑。這樣我們就可以在以后的程序開發(fā)過程中,調(diào)用Bean文件或者通過Servlet來進行對數(shù)據(jù)庫的連接和操作[9]。</p><p>  值得注意的是如果是老版本的SQL Server,可能會出現(xiàn)與Tomcat和JSP連接失敗的故障,你可以通過Telnet 127.0.0.0:1433指令來測試數(shù)據(jù)庫的連通性,在本次設計時這個問題出現(xiàn)過,如果連接失敗,就應該給SQL Server打Service p

55、atch 3和Service patch 4補丁。一般這個問題打上SP3和SP4補丁就基本能夠解決,而且Telnet也會成功。本次設計的這個問題也是這么解決的。</p><p>  圖2.5 三個SQL Server的JDBC驅(qū)動的放置位置</p><p>  第三章 系統(tǒng)分析與設計</p><p>  3.1 系統(tǒng)功能分析</p><p&g

56、t;  根據(jù)對醫(yī)院門診流程的分析及客戶的要求,整個系統(tǒng)需要實現(xiàn)以下功能。</p><p>  軟件的整體功能,系統(tǒng)要操作簡單,要有友好的界面,系統(tǒng)的操作者的權(quán)限層次要有明確的分類,進入軟件時要進行身份驗證。而且出于對患者個人隱私的負責,患者病歷記錄只能在患者就醫(yī)期間由主治醫(yī)生調(diào)閱,其他任何人包括管理員無權(quán)查閱。這樣使的系統(tǒng)更具有人性化,因為系統(tǒng)中三個角色之間沒有聯(lián)系,所以設置三個獨立操作的角色對象。</p&

57、gt;<p> ?。?)患者角色能進行的對象操作</p><p>  ①可以聯(lián)機注冊成為用戶,設定自己的登錄名及密碼。</p><p> ?、诳砂瘁t(yī)生姓名自定義查詢。</p><p> ?、劭苫诓樵兘Y(jié)果進行預約,若指定醫(yī)生當日預約量已滿,則預約失敗。預約結(jié)果隨機返回給患者。</p><p>  ④可對已經(jīng)進行預約的情況查看或撤

58、消。</p><p> ?、蓊A約成功后可查詢主治醫(yī)生信息,病例信息。</p><p><b> ?。?)醫(yī)生角色</b></p><p> ?、倏刹榭搭A約患者的情況。</p><p><b> ?、诳刹樵兓颊卟±?lt;/b></p><p><b> ?、劭蓜?chuàng)建患者病

59、歷。</b></p><p>  ④可對患者的病例進行修改。</p><p><b> ?。?)管理員角色</b></p><p>  有固定的帳號,直接在數(shù)據(jù)庫添加,不能注冊成管理員,可以添加和刪除醫(yī)生帳號,對醫(yī)生用戶進行管理。但不能管理患者用戶,保證患者的隱私。</p><p>  3.2 系統(tǒng)設計思想&

60、lt;/p><p>  3.2.1 數(shù)據(jù)庫層-邏輯層-表示層三層結(jié)構(gòu)</p><p>  服務器端三層結(jié)構(gòu)及之間的關(guān)系如圖3-1所示。</p><p>  圖3.1 服務器端體系結(jié)構(gòu)</p><p>  3.2.2 角色模塊設計-設計模式</p><p>  整個系統(tǒng)中有三種用戶:醫(yī)生、患者、管理員,他們之間沒有相互的

61、操作,因此可以封裝到各自的類中去。dboperation包中設計了一個抽象父類DBOperation,具體的角色類(Admin、Patient、Doctor)從它繼承。將它的子類所公用的方法劃分成兩類進行設計。其中一類方法在各個子類內(nèi)部的具體實現(xiàn)時間,這些方法被直接設計在DBOperation類中,供子類繼承;另一類方法在各個子類內(nèi)部的具體實現(xiàn)不相同,這些方法被設計成抽象方法,由子類負責實現(xiàn)。</p><p> 

62、 3.2.3 與數(shù)據(jù)庫的連接</p><p>  設計一個類只負責與數(shù)據(jù)庫的連接工作,當與數(shù)據(jù)庫成功連接后,該類將能返回一個可靠的數(shù)據(jù)庫連接對象供其他類使用。每當用戶開始操作,即登錄成功就開始連接數(shù)據(jù)庫,數(shù)據(jù)庫的連接貫穿整個用戶操作的全過程,不會是每個操作進行一次連接,這樣太消耗數(shù)據(jù)庫資源,只到用戶完成操作,注銷退出后才斷開數(shù)據(jù)庫連接。</p><p>  3.2.4 日志記錄<

63、/p><p>  為了便于調(diào)試與服務器信息的記錄,設計一個類負責將需要的信息記入本地硬盤上的日志文件中。在開始系統(tǒng)運行開始,日記系統(tǒng)就開始記錄,記錄在log文件夾里面,存放格式是*.txt文件,當用戶的每個操作都會記錄到日記里面,不管是正確操作,錯誤操作還是誤操作,都會記錄。而且連系統(tǒng)的異常和數(shù)據(jù)庫異常都會記錄在日志上,這樣方便管理員的系統(tǒng)維護工作。而且日志每條記錄都顯示實時的時間。</p><p

64、>  3.3 系統(tǒng)功能分析</p><p>  根據(jù)系統(tǒng)所要求實現(xiàn)的功能要求,不同的用戶具有不同的操作權(quán)限,本系統(tǒng)主要劃分為三大用戶模塊:患者、醫(yī)生、管理員,模塊圖如下所示:</p><p>  圖3.2 系統(tǒng)功能模塊劃分</p><p><b>  3.4 業(yè)務流程</b></p><p>  根據(jù)現(xiàn)實的醫(yī)院門

65、診業(yè)務流程,以及根據(jù)系統(tǒng)功能模塊的分析,規(guī)劃出該系統(tǒng)的業(yè)務流程圖</p><p>  圖 3.3 業(yè)務流程圖</p><p>  第四章 系統(tǒng)實現(xiàn)與詳細設計</p><p><b>  4.1 數(shù)據(jù)庫設計</b></p><p>  當一個系統(tǒng)涉及數(shù)據(jù)庫時,其運行效率、冗余程度、可靠性、穩(wěn)定性等評價指標除了與上層的代碼

66、有關(guān)外,更多地會受到低層數(shù)據(jù)庫效率的影響。因此,一個好的數(shù)據(jù)庫設計能夠讓你的系統(tǒng)跑的更順暢、穩(wěn)定[5]。</p><p>  4.1.1 設計思路</p><p>  一、確定各實體間的關(guān)系</p><p>  首先確定各個實體之間的相互關(guān)系,這是設計好一個數(shù)據(jù)庫的基礎。實體之間的關(guān)系圖如圖4-1所示</p><p>  圖4.1 實體關(guān)系

67、圖</p><p>  二、將實體和關(guān)系轉(zhuǎn)化為表</p><p>  將各個角色的所有信息分別放在獨立的表中,其中包括該角色的全部信息。選定一個字段作為主鍵,這個字段存儲的信息在整個表中兩兩必須相異,比如本次設計中,醫(yī)生編號(DID)等。如果表中沒有此類信息,可人為加入惟一的ID用于標志,比如本次設計中的PID、AID、QID、HID等。</p><p>  三、主

68、鍵是唯一的依賴性</p><p>  保證表中其他字段只與主鍵有關(guān)系,如果一組信息同時與一個以上的表或者一個表中一個以上的字段有關(guān)系,則必須將這組信息抽出去獨立構(gòu)成一張表。</p><p><b>  四、指定索引</b></p><p>  對所有會成為查詢關(guān)鍵字的字段進行索引,以提高查詢效率。</p><p>  4

69、.1.2 表的設計</p><p>  一、醫(yī)生表(doctor)</p><p>  用來存儲醫(yī)生個人信息,其中“Password”字段在記錄插入時與“DID”字段信息相同,因此醫(yī)生在第一次登錄后應該及時地更改自己的密碼</p><p>  表4-1 醫(yī)生表結(jié)構(gòu)</p><p>  二、患者表(Patient)</p>&l

70、t;p>  表4-2 患者表結(jié)構(gòu)</p><p><b>  續(xù)表4-2</b></p><p>  值得注意的是PID設置成Identity類型是為了添加患者記錄時,患者編號能自動增長。這樣對患者注冊時提供方便,而且又是PK,又方便數(shù)據(jù)庫操作。</p><p>  三、病歷記錄表(history)</p><p>

71、;  病歷記錄表記錄了患者的病歷信息,以doctor字段與doctor表建立關(guān)系,以patient字段與patient表建立關(guān)系。當finished字段設為“1”時,邏輯層將不能對記錄進行修改,只能查詢。</p><p>  表 4-3 病歷記錄表結(jié)構(gòu)</p><p>  四、預約記錄表(pinqueue)</p><p>  預約記錄表記錄了已預約但尚未創(chuàng)建病歷的

72、患者的信息。在這一階段患者可以取消預約,而醫(yī)生創(chuàng)建病歷也會刪除記錄,這里對預約就診時間(Day字段)的約束條件,其取值范圍被限定在0~6之間。</p><p>  表4-4 預約記錄表結(jié)構(gòu)</p><p><b>  續(xù)表4-4</b></p><p>  五、管理員表(administrator)</p><p> 

73、 管理員表存儲了與管理員有關(guān)的信息,如用戶名、密碼、電子郵件、真實姓名 等。注意這里將管理員登錄用戶名設為索引,目的是為了提高查詢時的效率。</p><p>  表4-5 管理員表結(jié)構(gòu)</p><p>  六、醫(yī)生最大可預約數(shù)量表(appointment)和當前可預約數(shù)量表(curappointment)</p><p>  這2個表存儲了醫(yī)生每天可預約的最大數(shù)量和

74、當前可預約數(shù)量,在邏輯層中不提供對其的修改操作,只能在管理員添加醫(yī)生帳戶時輸入。以DID字段與doctor表中建立關(guān)系。而對于curappointment表,邏輯層提供修改方法。即醫(yī)生的可預約數(shù)量要與患者的預約和取消預約操作相聯(lián)系。</p><p>  表4-6 醫(yī)生最大可預約數(shù)量表結(jié)構(gòu)</p><p><b>  續(xù)表4-6</b></p><p

75、>  表4-7 醫(yī)生當前可預約數(shù)量表結(jié)構(gòu)</p><p><b>  續(xù)表4-7</b></p><p>  4.1.3 表關(guān)系圖</p><p>  圖 4.2 表關(guān)系圖</p><p>  在SQL Server的hospital數(shù)據(jù)庫中的關(guān)系圖中,新建關(guān)系圖,把所有要用到的表添加進去,然后根據(jù)下表的關(guān)聯(lián)進行

76、操作,就可以生成上面的關(guān)系圖。</p><p>  表 4-8 各表之間的關(guān)系</p><p><b>  續(xù)表4-8</b></p><p>  值得注意的是與字符串尤其是中文字符串相比,數(shù)據(jù)庫在處理字符、數(shù)字上更有效率,因此一些復雜度有限的字符串數(shù)據(jù)應該設計成字符或數(shù)字類型,并與字符串建立一一對應的關(guān)系,而把轉(zhuǎn)換工作交給邏輯層去處理。本次設

77、計中的“性別”字段,雖然使用“男”、“女”作為存儲數(shù)據(jù)更直觀,但使用“0”、“1”來代替可以帶來性能上的提高。</p><p>  4.2 邏輯層的設計</p><p>  4.2.1 邏輯層包結(jié)構(gòu)設計</p><p>  邏輯層的設計是本次畢業(yè)設計的重點環(huán)節(jié),根據(jù)三層結(jié)構(gòu),邏輯層封裝了系統(tǒng)能夠執(zhí)行的所有機制和程序,以及對數(shù)據(jù)庫的操作。用戶只要在表示層里面調(diào)用邏輯

78、層內(nèi)相映的CLASS文件就可以了,這些類文件都存放在/WEB-INF/CLASSES下面。而且程序只要編譯一次,就可以多次使用[2]。本次設計的邏輯層Bean文件的存放路徑如圖4-3所示,所有源程序見附錄。</p><p>  圖4.3 邏輯層使用的Bean文件</p><p> ?。?)hospital包概述</p><p>  整個邏輯層都封裝在hospital

79、包中,其UML圖如圖4-4所示。</p><p>  圖4.4 hospital包的UML圖</p><p> ?。?)hospital.db包的概述</p><p>  hospital.db封裝了整個系統(tǒng)用于完成基礎功能的類,如數(shù)據(jù)庫連接、日志記錄等。hospital.db包的UML圖如圖4-5所示。</p><p>  圖4.5 hos

80、pital.db包的UML圖</p><p>  hospital.db.Util:輔助類,用于完成一些JSP中常用的功能。</p><p>  hospital.db.InitServlet:初始化整個Servlet環(huán)境。</p><p>  hospital.db.DBconnection:與數(shù)據(jù)庫建立連接,返回Connection對象。</p>

81、<p>  hospital.db.Debug:記錄日志,將信息寫入指定的日志文件中。</p><p> ?。?)hospital.db.dboperation包概述</p><p>  hospital.db.dboperation包封裝了所有與用戶角色有關(guān)的模型。其中DBOperation類是一個抽象類,用于建立用戶模型,供具體角色(Admin、Patient、Doctor)

82、繼承。其UML圖如圖4-6所示。</p><p>  圖4.6 hosptial.db.dboperation包的UML圖</p><p>  hospital.db.dboperation.DBOperation:建立用戶的抽象模型,供子類繼承。</p><p>  hospital.db.dboperation.Admin:繼承DBOperation,定義管理員

83、模型。</p><p>  hospital.db.dboperation.Patient:繼承DBOperation,定義患者模型。</p><p>  hospital.db.dboperation.Doctor:繼承DBOperation,定義醫(yī)生模型。</p><p>  hospital.db.dboperation.InvalidUserExceptio

84、n:繼承自Exception,用以封裝</p><p>  一個表示“非法用戶名”的異常。</p><p>  4.2.2 與數(shù)據(jù)庫建立連接類DBConnection</p><p>  本類位于hospital.db包中,由于Connection是一個非常耗資源的對象,因此在這里使用單例模式來設計DBConnection類,保證了整個生命周期內(nèi)只存在一個Conn

85、ection對象,該對象可以被其他類重復利用,這樣可以大大節(jié)省系統(tǒng)資源。下面是DBConnection類的部分代碼的說明。</p><p>  package hospital.db;</p><p>  import java.sql.*;</p><p>  import hospital.db.*;</p><p>  /*本類用于與數(shù)

86、據(jù)庫建立接*/</p><p>  public abstract class DBConnection{</p><p>  private static Connection conn=null;</p><p>  /* 與數(shù)據(jù)庫建立連接,返回值-Connection對象*/</p><p>  public static Connec

87、tion getConnection(){</p><p>  String CLASSFORNAME="com.microsoft.jdbc.sqlserver.SQLServerDriver";</p><p>  String SERVANDDB="jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseNam

88、e=hospital";</p><p>  /*調(diào)用JDBC驅(qū)動,以及定位hospital數(shù)據(jù)庫*/</p><p>  String USER="sa";</p><p>  String PWD="tiantang"; //數(shù)據(jù)庫管理員sa帳號和密碼</p><p><b>

89、  try{</b></p><p>  Class.forName(CLASSFORNAME);</p><p>  conn=DriverManager.getConnection(SERVANDDB,USER,PWD);</p><p>  Statement stmt=conn.createStatement(ResultSet.TYPE_S

90、CROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); </p><p>  Debug.log("Connection created."); //連接成功,寫入LOG文件</p><p>  }catch(Exception ex)</p><p><b>  {</b></p&

91、gt;<p>  Debug.log(Debug.getExceptionMsg(ex)); //連接拋出錯誤,也寫入LOG文件</p><p><b>  }</b></p><p>  return conn;</p><p><b>  } }</b></p><p>  該程

92、序中一些關(guān)鍵的原理值得說明一下。將類定義為抽象類防止被實例化,這樣可以保證內(nèi)部封裝的Connection對象只能用該類定義的靜態(tài)方法(getConnection())來訪問。將內(nèi)部的Connection對象“conn”定義為靜態(tài)私有變量,保證整個生命周期只有一份“conn”實例存在,且不能被其他類直接訪問。</p><p>  數(shù)據(jù)庫服務器為了保證資源被充分利用,會設定一個連接保持時限,當一個連接時限內(nèi)與數(shù)據(jù)庫沒

93、有通信時,會被服務器關(guān)閉。而“Debug.log()”是定義在Debug類中的靜態(tài)方法,用來將信息存入日志文件。</p><p>  關(guān)于hosptial.db包中其他類的介紹和說明本節(jié)不在贅述,源程序見附錄。</p><p>  4.2.3 用戶角色類</p><p> ?。?)醫(yī)生模型Doctor類</p><p>  本類位于hosp

94、ital.db.dboperation包中,doctor類封狀了醫(yī)生角色可執(zhí)行的所有操作。比如登錄,查詢患者病歷,修改病歷等操作。每個對象對應一個可執(zhí)行操作。</p><p>  圖4.7 doctor類對象列表</p><p> ?。?)管理員模型Admin類</p><p>  本類位于hospital.db.dboperation包中,admin類封狀了管理員

95、可執(zhí)行的所有操作,根據(jù)下圖,每個對象對應一個操作。</p><p>  圖4.8 admin類對象列表</p><p> ?。?)患者模型Patient類</p><p>  本類位于hospital.db.dboperation包中,patient類封裝了患者角色可執(zhí)行的所有操作。比如登錄,查詢醫(yī)生信息,預約等操作。在編寫程序時,每個對象就是一個操作。如addPa

96、tient()就是針對患者注冊的一個公有對象。</p><p>  圖4.9 patient類對象列表</p><p><b>  4.3 表達層設計</b></p><p>  4.3.1 表達層設計概述</p><p>  表示層是信息系統(tǒng)的用戶接口部分,即人機界面,是用戶與系統(tǒng)間交互信息的窗口,主要功能是指導操作

97、人員使用界面,輸入數(shù)據(jù)、輸出結(jié)果。它并不擁有企業(yè)邏輯,或只擁有部分不涉及企業(yè)核心機密的應用邏輯[8]。</p><p>  當邏輯層編寫完畢,只剩下最后一項工作,允許用戶以適當?shù)姆绞酵ㄟ^邏輯層與數(shù)據(jù)庫層交互,而這正是表示層的工作。這里就要通過功能完整的JSP代碼和HTML代碼來整合。所以下面將JSP頁面與邏輯層的整合過程中的重要部分。</p><p><b> ?。?)聲明部分&

98、lt;/b></p><p>  這個部分用“<%@……%>”包括,用于設定一些于JSP頁面有關(guān)的信息。一般第一行定義了頁面所使用的字符集,中文界面一般使用GB2312;接下來使用“<%@page import=“……”%>”定義頁面需要導入的包,即“import”語句,本次設計中一般被用到的包有:“hospital.db.*”、“hospital.db.dboperation.*”

99、、“java.sql.*”[11]。</p><p> ?。?)HTML設計部分</p><p>  這部分更多地使用HTML代碼把表格搭建出來并進行美化。一般使用HTML中的</p><p>  form標簽、table標簽和div標簽以及輔助action屬性來搭建框架和美化。其中加入“<%@.....%>”的JSP代碼段,使得實現(xiàn)動態(tài)頁面。</

100、p><p><b>  (3)頁面數(shù)據(jù)處理</b></p><p>  這個部分是整個JSP頁面的核心部分,負責關(guān)于系統(tǒng)的權(quán)限檢查,從頁面收集數(shù)據(jù)、對數(shù)據(jù)庫進行操作、檢測操作結(jié)果等。</p><p> ?。?)釋放數(shù)據(jù)庫資源</p><p>  當所有操作都完成,用戶結(jié)束操作或關(guān)閉界面,系統(tǒng)調(diào)用DBOperation類中的“

101、closeConnection()”方法來釋放數(shù)據(jù)資源。</p><p>  表達層設計中使用的幾大JSP對象</p><p><b>  Request對象</b></p><p>  該對象封裝了用戶提交的信息,通過調(diào)用該對象相應的方法可以獲得封裝的信息,即使用該對象可以獲取用戶提交的信息。 如request.getParameter()方

102、法可以獲取該表單通過text提交的信息。、</p><p>  Response對象</p><p>  該對象封裝了對客戶的請求做出的動態(tài)的響應,向客戶端發(fā)送數(shù)據(jù)。如response.sendRedirect()方法來實現(xiàn)客戶的重定向,就是當用戶進行了之前的操作,就會使用這個方法來跳轉(zhuǎn)到別的頁面。</p><p><b>  Session對象</

103、b></p><p>  它是在第一個JSP頁面被裝載時自動創(chuàng)建,完成會話期間的管理,當會話結(jié)束,session自動釋放。如session.getId()方法是獲取Session對象編號。</p><p>  Application對象</p><p>  服務器啟動后就產(chǎn)生了這個Application對象,當客戶在所訪問的各個頁面之間瀏覽時,這個Applic

104、ation對象都是同一個,直到服務器關(guān)閉。如application.setAttribute(String key)方法是獲取application對象中含有關(guān)鍵字的對象。</p><p><b>  其他對象</b></p><p>  在JSP幾大內(nèi)置對象中,還有Out,Cookie,Config,Page和Exception等,但在本次設計中不是很常用,所以不在

105、贅述[8]。</p><p>  本次設計的系統(tǒng),有三個用戶角色,每個角色都是獨立的操作。所以這次設計針對每個用戶的操作界面即每個用戶獨立操作的表示層。在系統(tǒng)文件中,…/hospital/admin;…/hospital/patient;…/hospital/doctor三個文件夾中分別放了每個用戶獨立操作的JSP頁面。比如管理員文件中的addDoctor.jsp就是來實現(xiàn)添加醫(yī)生信息的JSP文件。所有的JSP文

106、件名簡單好懂,一目了然,便于再次開發(fā)的時候方便設計。</p><p>  4.4 系統(tǒng)功能實現(xiàn)與演示</p><p>  由于系統(tǒng)有3個角色模型,每個角色的模型都有很多執(zhí)行操作,介紹繁雜留給用戶自己體驗。所以本節(jié)介紹一些基本的用戶操作來實現(xiàn)基本的功能。</p><p>  一、打開IE輸入http://localhost:8080/hospital進入系統(tǒng)主界面&l

107、t;/p><p>  圖4.10 系統(tǒng)主界面</p><p>  二、選擇角色類型進行登錄,點擊左邊導航鏈接進行操作。下圖是管理員登錄界面,其他角色用戶登錄也是一樣。所以用一張圖來代表。</p><p>  圖4.11 管理員登錄界面</p><p>  三、當患者登錄成功以后,會回到主界面,再點擊患者用戶,就可以看見下面出現(xiàn)很多操作條目,點擊其

108、中的條目進行患者必須的操作。比如查詢醫(yī)生信息,預約等。</p><p>  圖4.12 患者查詢醫(yī)生信息界面</p><p>  當患者用戶點擊醫(yī)生,就進入預約界面。選擇合適的時間進行就醫(yī),如果想取消預約,就在查詢預約中,點擊顯示的記錄就可以提示是否取消。</p><p>  四、患者就醫(yī)過后可以查詢自己的病歷,以及出訪和是否治療結(jié)束。</p><

109、;p>  圖4.13 患者查詢病歷信息界面</p><p>  五、如果患者是新用戶,想要進入預約系統(tǒng)就要注冊新帳號。</p><p>  圖4.14 患者注冊界面</p><p>  六、管理員登錄進去后可以添加,刪除醫(yī)生信息和帳戶。</p><p>  圖4.15 管理員管理醫(yī)生信息界面</p><p>  

110、七、刪除醫(yī)生信息只需要點選醫(yī)生姓名就可以獲得是否刪除的提示。</p><p>  圖4.16 是否刪除醫(yī)生信息</p><p>  八、醫(yī)生第一次登錄后應該及時更改密碼,因為數(shù)據(jù)庫默認的醫(yī)生帳戶和密碼是一致的,為了安全應該改密碼。</p><p>  圖4.17 醫(yī)生更改密碼界面及可執(zhí)行操作界面</p><p>  到這里,該系統(tǒng)的基本功能設

111、計和界面操作基本介紹完畢,整個系統(tǒng)操作簡單,界面友好,根據(jù)左邊導航欄,用戶的操作一目了然,基本不存在難度。而且功能也基本實現(xiàn),而且移植性高,只要重新編譯hospital.db包下面的DBConnection.java文件即可。當然數(shù)據(jù)庫的移植也要匹配。所以本次系統(tǒng)設計的功能基本成功,但還有待進一步的提高和深化。</p><p><b>  第五章 設計總結(jié)</b></p>&

112、lt;p>  從接受畢業(yè)設計任務到設計完成已經(jīng)差不多3個月了。整個設計要求對MS SQL Server數(shù)據(jù)庫應用系統(tǒng)的基本實現(xiàn)方法以及實現(xiàn)技術(shù)、工具有一定的了解。而且,在設計醫(yī)院門診查詢系統(tǒng)時,需要對功能需求考慮完善。雖然我以前也做過類似應用系統(tǒng)的設計開發(fā),但通過本次設計還是受益匪淺。在整個設計過程中,系統(tǒng)的整體構(gòu)架很早就完成了,接下來的細節(jié)問題卻使我頗傷腦筋。隨著設計程度的不斷深入,又遇到了一些早期沒有想到的問題。為了解決這些問

113、題,有時還要對幾個模塊進行大幅度的修改。在設計中,還需要進行細致的測試工作,以發(fā)現(xiàn)程序的錯誤和功能上的不足。</p><p>  本系統(tǒng)開發(fā)時使用的系統(tǒng)為Windows XP Professional版本。數(shù)據(jù)庫的建立使用的是MS SQL Server 2000個人版。數(shù)據(jù)訪問方法是使用通過調(diào)用封裝了JDBC驅(qū)動的Bean程序?qū)崿F(xiàn)。本系統(tǒng)是基于JSP設計的。數(shù)據(jù)庫的設計由于在校學習了這門課程,所以,著手較快。設計

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論