

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 摘 要</b></p><p> 如今計(jì)算機(jī)技術(shù)和網(wǎng)絡(luò)技術(shù)發(fā)展趨勢(shì)良好,網(wǎng)絡(luò)的速度,穩(wěn)定性和安全性都不斷在改善,計(jì)算機(jī)和網(wǎng)絡(luò)設(shè)備性價(jià)比也不斷在提高,大眾都普遍承認(rèn)了這種信息傳遞媒介的便利性和有效性。通過(guò)網(wǎng)絡(luò)實(shí)現(xiàn)預(yù)約掛號(hào)的想法便應(yīng)運(yùn)而生,求醫(yī)者只需坐在家中,輕松的點(diǎn)擊下鼠標(biāo),就可以掛上醫(yī)院門(mén)診號(hào),可以做到“足不出戶選醫(yī)生”,這樣能有效減少求醫(yī)者的等待時(shí)間,使患者
2、充分了解醫(yī)院及相關(guān)醫(yī)生的基本情況。這對(duì)于加強(qiáng)門(mén)診掛號(hào)的便捷性,安全性,高效性和提高節(jié)源效益方面都有重大的意義。</p><p> 本系統(tǒng)主要為醫(yī)院在醫(yī)生和病人的信息管理方面建立平臺(tái)。在系統(tǒng)設(shè)計(jì)方面,使用SSH(Struts2 + Spring + Hibernate)三大框架,采用B/S模式。數(shù)據(jù)庫(kù)采用mySql,服務(wù)器端程序使用java程序設(shè)計(jì)語(yǔ)言在MyEclipse開(kāi)發(fā)工具下進(jìn)行編寫(xiě),網(wǎng)頁(yè)采用的是JSP技術(shù)
3、,它擁有卓越的系統(tǒng)可移植性,同時(shí)它與流行的XML等技術(shù)也能良好整合,它使我們的網(wǎng)頁(yè)更加生動(dòng)、具有表現(xiàn)力。</p><p> 首先通過(guò)對(duì)系統(tǒng)的各方面分析,介紹系統(tǒng)的可行性。第二,通過(guò)系統(tǒng)各模塊簡(jiǎn)介,簡(jiǎn)單介紹系統(tǒng)構(gòu)成:系統(tǒng)管理模塊、病人管理模塊、醫(yī)生管理模塊、信息管理模塊等。第三,說(shuō)明系統(tǒng)實(shí)現(xiàn)所用到的各項(xiàng)技術(shù)的功能。最后,對(duì)以實(shí)現(xiàn)的系統(tǒng)功能進(jìn)行簡(jiǎn)單測(cè)試。</p><p> 關(guān)鍵詞:預(yù)約掛號(hào)
4、、SSH、B/S、mySql、MyEclipse、Java、Jsp</p><p><b> Abstract</b></p><p> Today, the computer technology and network technology development trend is good, the speed of the network, stabili
5、ty and safety are constantly improving, computer and network equipment performance to improve constantly too, the public is widely acknowledged the convenience and effectiveness of information transmission medium. Realiz
6、e 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 </p><p> This system is mainly for hospi
7、tals and doctors to establish the patient's information management platform. In the system, the system uses SSH (struts2 + Spring + Hibernate) three framework, using B/S mode. The database using MySQL, server-side pr
8、ograms 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 integrate
9、d, it make our website more vivid</p><p> 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 t
10、he system of simple form: user management module, system management module, patient management module, the doctor management module, the information management module, etc. Thirdly, use that system to realize the functio
11、n of the technology. Finally, in order to realize the function of the system is simple test.</p><p> Keywords: Pointment Registration、SSH、B/S、MySQL、MyEclipse、Java </p><p><b> 目 錄</b&
12、gt;</p><p> 1 前 言- 1 -</p><p> 1.1 選題背景和意義- 1 -</p><p> 1.2 選題目的- 1 -</p><p> 1.3 國(guó)內(nèi)外發(fā)展現(xiàn)狀- 2 -</p><p> 1.4 主要解決的問(wèn)題- 2 -</p><p>
13、 2 需求分析- 3 -</p><p> 2.1 系統(tǒng)功能需求分析- 3 -</p><p> 2.2 系統(tǒng)的性能需求- 4 -</p><p> 3 系統(tǒng)可行性分析- 5 -</p><p> 3.1 技術(shù)可行性- 5 -</p><p> 3.2 經(jīng)濟(jì)可行性- 5 -</
14、p><p> 3.3 操作可行性- 5 -</p><p> 4 相關(guān)技術(shù)及開(kāi)發(fā)環(huán)境- 6 -</p><p> 4.1 B/S模型- 6 -</p><p> 4.2 SSH三大框架- 7 -</p><p> 4.3 Struts框架- 7 -</p><p>
15、4.3.1 控制器(Controller)- 8 -</p><p> 4.3.2 模型(Model)- 8 -</p><p> 4.3.3 視圖(View)- 9 -</p><p> 4.3.4 struts-config.xml- 9 -</p><p> 4.4 Spring框架- 9 -</p>
16、<p> 4.5 Hibernate框架- 10 -</p><p> 4.6 Tomcat 6.0- 11 -</p><p> 4.7 Jsp技術(shù)- 11 -</p><p> 4.8 MyEclipse 10開(kāi)發(fā)工具- 12 -</p><p> 4.9 MySQL數(shù)據(jù)庫(kù)簡(jiǎn)介- 12 -</
17、p><p> 4.10 SQLyog圖形化管理MYSQL數(shù)據(jù)庫(kù)工具- 13 -</p><p> 5 系統(tǒng)的具體設(shè)計(jì)與實(shí)現(xiàn)- 14 -</p><p> 5.1 數(shù)據(jù)庫(kù)設(shè)計(jì)- 14 -</p><p> 5.1.1 數(shù)據(jù)庫(kù)的總體設(shè)計(jì)- 14 -</p><p> 5.1.2 數(shù)據(jù)庫(kù)字典- 15 -&
18、lt;/p><p> 5.2 系統(tǒng)流程設(shè)計(jì)- 19 -</p><p> 5.3 系統(tǒng)功能模塊設(shè)計(jì)- 20 -</p><p> 5.3.1 用戶模塊- 20 -</p><p> 5.3.2 醫(yī)生模塊- 21 -</p><p> 5.3.3 管理員模塊- 21 -</p><
19、p> 6 系統(tǒng)的實(shí)現(xiàn)- 22 -</p><p> 6.1 系統(tǒng)的部署- 22 -</p><p> 6.2 系統(tǒng)的實(shí)施環(huán)境- 22 -</p><p> 6.2.1 服務(wù)器端- 22 -</p><p> 6.2.2 客戶端- 22 -</p><p> 7 系統(tǒng)功能的實(shí)現(xiàn)- 2
20、3 -</p><p> 7.1 主頁(yè)面模塊- 23 -</p><p> 7.2 預(yù)約掛號(hào)模塊- 23 -</p><p> 7.3 醫(yī)院概況功能模塊- 26 -</p><p> 7.4 科室導(dǎo)航功能模塊- 27 -</p><p> 7.5 專(zhuān)家介紹功能模塊- 28 -</p&
21、gt;<p> 7.6 醫(yī)療常識(shí)功能模塊- 29 -</p><p> 7.7 新聞動(dòng)態(tài)功能模塊- 29 -</p><p> 7.8 登陸功能模塊- 30 -</p><p> 7.9 用戶注冊(cè)功能模塊- 31 -</p><p> 8 總結(jié)- 33 -</p><p>
22、 致 謝- 34 -</p><p> 參考文獻(xiàn)- 35 -</p><p><b> 1 前 言</b></p><p> 1.1 選題背景和意義</p><p> 作為社會(huì)組織的一個(gè)重要組成部分,社會(huì)醫(yī)療事業(yè)是和人民生活息息相關(guān)的領(lǐng)域。隨著生活水平的提高,人們對(duì)自身所受醫(yī)療保健環(huán)境的要求也越來(lái)越高。
23、醫(yī)院需要以高質(zhì)量的服務(wù)提供給大眾。隨著我國(guó)醫(yī)療體制的改革,醫(yī)院自身的發(fā)展也需要不斷提高自身的管理水平和競(jìng)爭(zhēng)能力。而醫(yī)院又是一個(gè)需要處理大量種類(lèi)繁多、關(guān)系復(fù)雜的信息的機(jī)構(gòu),運(yùn)用信息系統(tǒng)改進(jìn)醫(yī)院管理正所謂勢(shì)在必然。</p><p> 隨著網(wǎng)絡(luò)通訊技術(shù)的發(fā)展,Internet應(yīng)用的普及,醫(yī)院網(wǎng)絡(luò)預(yù)約掛號(hào)系統(tǒng)的實(shí)現(xiàn)成為了可能。該系統(tǒng)不僅具有一般門(mén)診掛號(hào)系統(tǒng)的功能,又可以分析和統(tǒng)計(jì)患者的流量、各醫(yī)生的就診量,并且可指定或
24、指導(dǎo)患者在預(yù)約的特定時(shí)間來(lái)就診等等功能,在方便病人就診的同時(shí),大大提高了醫(yī)院工作效率和資源利用率。</p><p> 目前國(guó)內(nèi)一些醫(yī)院采用了部分中小型醫(yī)療管理系統(tǒng),雖然滿足了早期的醫(yī)療管理需求,但隨著醫(yī)院體制的不斷改進(jìn)和完善,早期的醫(yī)療管理系統(tǒng)已經(jīng)不能完全滿足新業(yè)務(wù)的需要,使得新一代全新的、適應(yīng)業(yè)務(wù)發(fā)展要求的管理軟件的開(kāi)發(fā)迫在眉睫。其中掛號(hào)一直是困擾醫(yī)院提高服務(wù)質(zhì)量的一個(gè)復(fù)雜環(huán)節(jié),特別是醫(yī)療水平高、門(mén)診量大的醫(yī)
25、院,基于便利快捷等因素的考慮,用Browser/Web模式來(lái)設(shè)計(jì)考試系統(tǒng)比較合適,服務(wù)器端我們采用mySQL數(shù)據(jù)庫(kù)系統(tǒng)和Java組件來(lái)構(gòu)成應(yīng)用服務(wù)系統(tǒng);客戶端采用瀏覽器來(lái)完成管理的全過(guò)程,同時(shí)可進(jìn)行遠(yuǎn)程系統(tǒng)維護(hù)和管理。利用數(shù)據(jù)庫(kù)技術(shù),結(jié)合目前硬件價(jià)格普遍下跌與寬帶網(wǎng)大力建設(shè)的有利優(yōu)勢(shì),應(yīng)用JSP技術(shù),開(kāi)發(fā)醫(yī)院掛號(hào)信息管理系統(tǒng)這一程序。網(wǎng)絡(luò)預(yù)約掛號(hào)運(yùn)用方便、操作簡(jiǎn)單,省時(shí),省力,效率很高。通過(guò)提供完善的掛號(hào)信息管理系統(tǒng),用戶可自主地選擇合
26、適的醫(yī)生,可以達(dá)到增加醫(yī)生與管理人員之間、醫(yī)生與病人之間的交流和聯(lián)系的目的。同時(shí)醫(yī)院可以通過(guò)網(wǎng)絡(luò)預(yù)約以達(dá)到醫(yī)院門(mén)診掛號(hào)信息的共享,改善緩解醫(yī)院窗口掛號(hào)的緊張現(xiàn)狀。</p><p><b> 1.2 選題目的</b></p><p> 醫(yī)療事業(yè)與我們的生活密切相關(guān),希望能夠完成一個(gè)實(shí)用的,功能較完善的信息處理系統(tǒng),幫助醫(yī)生管理信息。本課題是為改善門(mén)診高峰期掛號(hào)排隊(duì)
27、長(zhǎng)、就診長(zhǎng)時(shí)間等待,環(huán)境擁擠混亂的現(xiàn)狀,特別是解決專(zhuān)家號(hào)(名專(zhuān)家號(hào))難掛的問(wèn)題,杜絕倒號(hào)、炒專(zhuān)家號(hào)的現(xiàn)象,緩解門(mén)診高峰的就診壓力而提出的。利用該預(yù)約掛號(hào)系統(tǒng),用戶就可以在網(wǎng)上預(yù)約醫(yī)院的專(zhuān)家、專(zhuān)科號(hào),而無(wú)須再受排隊(duì)之苦。能夠?qū)θ剿斎氲南嚓P(guān)信息進(jìn)行查詢,保存,修改等功能,系統(tǒng)應(yīng)該具有友好的界面,操作簡(jiǎn)單等特點(diǎn)。有了比較先進(jìn)的軟件,醫(yī)院將會(huì)更好地為社會(huì)大眾服務(wù)。達(dá)到增加醫(yī)生與管理人員之間、醫(yī)生與病人之間的交流和聯(lián)系的目的。從而更好的改善就
28、醫(yī)環(huán)境,簡(jiǎn)化就醫(yī)環(huán)節(jié),節(jié)約就醫(yī)時(shí)間,真正體現(xiàn)了以病人為中心,一切從方便患者出發(fā),符合當(dāng)今醫(yī)院人性化溫馨服務(wù)的理念。 </p><p> 1.3 國(guó)內(nèi)外發(fā)展現(xiàn)狀</p><p> 在中國(guó)傳統(tǒng)的醫(yī)院門(mén)診掛號(hào)是即時(shí)掛號(hào)、即時(shí)就診門(mén)診模式的。但是這種就診的模式給患者帶來(lái)許多不便。掛號(hào)時(shí)間長(zhǎng)、候診時(shí)間長(zhǎng)、交費(fèi)時(shí)間長(zhǎng)、看病時(shí)問(wèn)短。據(jù)統(tǒng)計(jì),患者在門(mén)診有60%以上的時(shí)間都是用來(lái)等候的,真正
29、就診的時(shí)間卻很短。這樣就給病人及家屬帶來(lái)了眾多的不便。</p><p> 而在歐美國(guó)家,患者看病一般都需要預(yù)約掛號(hào)。除非急診,很少有人直接到醫(yī)院找醫(yī)生的。沒(méi)有提前24小時(shí)的電話預(yù)約,醫(yī)院一般也不會(huì)接診。一些醫(yī)院設(shè)立的預(yù)約掛號(hào)部門(mén),一般都由經(jīng)驗(yàn)豐富的醫(yī)生、護(hù)士擔(dān)任接線員,以便根據(jù)患者自訴癥狀建議應(yīng)掛科室,推薦專(zhuān)家。也有部分的醫(yī)院可以同時(shí)通過(guò)網(wǎng)站預(yù)約的。 </p><p> 隨著網(wǎng)絡(luò)功能及
30、宣傳手段不斷優(yōu)化和人民群眾觀念的不斷更新,網(wǎng)上預(yù)約掛號(hào)前景無(wú)疑是可觀的。按現(xiàn)在的中國(guó)門(mén)診預(yù)約就診患者的年齡及受教育程度和使用網(wǎng)絡(luò)資源程度的情況分析來(lái)看,各種預(yù)約方式和諧并存著才能滿足不用類(lèi)型的患者的需求。網(wǎng)上預(yù)約掛號(hào)的實(shí)施剛起步不久,預(yù)約掛號(hào)系統(tǒng)的不斷改善優(yōu)化還是一個(gè)循序漸進(jìn)的過(guò)程,要先向更好地為習(xí)慣使用這一資源的患者服務(wù)的目標(biāo)進(jìn)發(fā)。</p><p> 1.4 主要解決的問(wèn)題</p><p
31、> 針對(duì)現(xiàn)在醫(yī)院掛號(hào)難的情況,網(wǎng)上預(yù)約掛號(hào)系統(tǒng)可以使廣大群眾提前了解醫(yī)院及相關(guān)醫(yī)生的基本情況,根據(jù)自身情況合理的安排就醫(yī)計(jì)劃,減少候診時(shí)間,方便就醫(yī)。同時(shí)有利于醫(yī)院提升管理水平,提高工作效率和醫(yī)療質(zhì)量,降低醫(yī)療安全風(fēng)險(xiǎn)。網(wǎng)上預(yù)約正悄然改變著都市求醫(yī)者的看病觀念。擁有相對(duì)固定的個(gè)人醫(yī)生和習(xí)慣。預(yù)約看病,將不再遙遠(yuǎn),所以應(yīng)用必將越來(lái)越廣泛。</p><p><b> 2 需求分析</b&g
32、t;</p><p> 2.1 系統(tǒng)功能需求分析</p><p> 醫(yī)院預(yù)約掛號(hào)管理系統(tǒng)是為了在網(wǎng)上提供一個(gè)掛號(hào)信息的平臺(tái),通過(guò)對(duì)用戶的業(yè)務(wù)流程分析,我們可以分析出醫(yī)院網(wǎng)上預(yù)約系統(tǒng)大致可以分為兩類(lèi)用戶:一類(lèi)是普通預(yù)約者,另一類(lèi)是醫(yī)院內(nèi)部管理人員。那么一個(gè)較完整的系統(tǒng)大致要求具有以下功能:</p><p><b> 患者掛號(hào)預(yù)約</b>&
33、lt;/p><p> 預(yù)約者可先查詢了解醫(yī)生的詳細(xì)信息,然后登陸,按需進(jìn)行預(yù)約,做到“足不出戶選醫(yī)生”。同時(shí)注冊(cè)患者可以修改個(gè)人信息。</p><p><b> 信息查詢</b></p><p> 預(yù)約者可查詢歷次預(yù)約記錄的清單;此外,預(yù)約者還可以掌握最新的門(mén)診時(shí)間表,專(zhuān)家或醫(yī)生的個(gè)人簡(jiǎn)介、照片、職稱(chēng),以及每個(gè)診次的所余掛號(hào)數(shù)量。</p
34、><p><b> 醫(yī)院概況</b></p><p> 可及時(shí)看到醫(yī)院的詳細(xì)介紹。</p><p><b> 新聞動(dòng)態(tài)</b></p><p> 可及時(shí)看到醫(yī)院最新的公告新聞信息。</p><p><b> 科室導(dǎo)航</b></p>
35、<p> 預(yù)約者可以詳細(xì)查看該醫(yī)院每個(gè)科室詳細(xì)信息、醫(yī)療設(shè)備、該科室醫(yī)生的信息,方便選擇合適的醫(yī)生預(yù)約。</p><p><b> 專(zhuān)家介紹</b></p><p> 在這里預(yù)約者可以查看每個(gè)醫(yī)生的詳細(xì)信息,如職稱(chēng)、個(gè)人簡(jiǎn)介、專(zhuān)長(zhǎng)以及該專(zhuān)家的預(yù)約信息等。</p><p><b> 醫(yī)生查詢預(yù)約信息</b>
36、</p><p> 實(shí)現(xiàn)查詢自己未來(lái)診次的病人預(yù)約情況;醫(yī)生還可以修改自己的個(gè)人信息;并可根據(jù)具體情況對(duì)可開(kāi)放網(wǎng)絡(luò)預(yù)約的時(shí)間段進(jìn)行個(gè)性化設(shè)置;在與患者診療時(shí)可根據(jù)自己的時(shí)間段和病人的時(shí)間安排,可與病人進(jìn)行下一次的預(yù)約,從而達(dá)到每個(gè)就診者多次看病的整體連續(xù)性。</p><p><b> 系統(tǒng)維護(hù)</b></p><p> 對(duì)數(shù)據(jù)庫(kù)進(jìn)行維護(hù)、
37、對(duì)系統(tǒng)有關(guān)參數(shù)進(jìn)行設(shè)定和調(diào)整。</p><p> 2.2 系統(tǒng)的性能需求</p><p> 該系統(tǒng)在性能功能上應(yīng)達(dá)到如下需求:</p><p> 界面簡(jiǎn)約友好、操作簡(jiǎn)單易懂。用戶使用系統(tǒng)只需點(diǎn)擊喜歡的內(nèi)容即可有鏈接實(shí)現(xiàn)。</p><p> 根據(jù)軟件工程的思想,以傳統(tǒng)的瀑布模型為基礎(chǔ),進(jìn)行軟件需求分析,系統(tǒng)結(jié)構(gòu)設(shè)計(jì),數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì),系統(tǒng)
38、的實(shí)現(xiàn),系統(tǒng)測(cè)試,系統(tǒng)維護(hù)。</p><p> 在結(jié)構(gòu)上應(yīng)具有很好的可擴(kuò)展性,便于將來(lái)的功能擴(kuò)展和維護(hù)。</p><p> 3 系統(tǒng)可行性分析</p><p> 在實(shí)施一個(gè)項(xiàng)目之前,首先要對(duì)將要實(shí)施的項(xiàng)目進(jìn)行可行性研究,確定項(xiàng)目是否能夠進(jìn)行,是否值得進(jìn)行。并不是所有的問(wèn)題都有簡(jiǎn)單明顯的解決辦法,事實(shí)上,許多問(wèn)題不可能在預(yù)定的系統(tǒng)規(guī)模之內(nèi)解決。如果在問(wèn)題沒(méi)有可
39、行的解的情況下,那么花費(fèi)在這項(xiàng)工程上的任何時(shí)間、人力、軟硬件資源和經(jīng)費(fèi)都是浪費(fèi)的。 </p><p> 3.1 技術(shù)可行性</p><p> 本系統(tǒng)基于Windows平臺(tái),采用B/S三層體系結(jié)構(gòu)、SSH三大框架、JAVA語(yǔ)言編程和mySQL數(shù)據(jù)庫(kù)技術(shù)設(shè)計(jì)并實(shí)現(xiàn)醫(yī)院掛號(hào)預(yù)約信息管理系統(tǒng)。該系統(tǒng)實(shí)現(xiàn)了在Internet上完成用戶信息錄入、修改及反饋的控制和管理,所以從技術(shù)上來(lái)說(shuō)
40、是可行的。</p><p> 3.2 經(jīng)濟(jì)可行性</p><p> 從本系統(tǒng)開(kāi)發(fā)的角度來(lái)看,系統(tǒng)的投資成本比較低,只需購(gòu)買(mǎi)參考資料以及開(kāi)發(fā)系統(tǒng)時(shí)需要的開(kāi)發(fā)工具。屬于小型系統(tǒng),工作量適中,使用難度適中,所使用的軟件也是共享版,因此系統(tǒng)經(jīng)濟(jì)可行性是可行的。</p><p> 3.3 操作可行性</p><p> 由于現(xiàn)在科技的飛速發(fā)展
41、,計(jì)算機(jī)早已普及生活的方方面面,便利的科技條件給人們帶來(lái)優(yōu)越的工作環(huán)境,這使人們對(duì)工作效率及可操作性都有了更高的要求。本系統(tǒng)是基于成熟的瀏覽器/服務(wù)器模式,這種模式具有良好的開(kāi)放性,利用單一地訪問(wèn)點(diǎn),用戶可以在任何地點(diǎn)使用該系統(tǒng),可以跨平臺(tái)以相同的瀏覽器界面訪問(wèn)系統(tǒng)。該系統(tǒng)平臺(tái)直接面向管理員和患者用戶,界面簡(jiǎn)單、明了,采用可視化界面,用戶只需用鼠標(biāo)和鍵盤(pán)就可以對(duì)系統(tǒng)進(jìn)行管理及預(yù)約等功能。</p><p> 4
42、 相關(guān)技術(shù)及開(kāi)發(fā)環(huán)境</p><p> 4.1 B/S模型 </p><p> B/S結(jié)構(gòu),即Browser/Server(瀏覽器/服務(wù)器)結(jié)構(gòu),是隨著Internet技術(shù)的興起,對(duì)C/S結(jié)構(gòu)的一種變化或者說(shuō)是改進(jìn)的結(jié)構(gòu)。用戶界面完全通過(guò)瀏覽器實(shí)現(xiàn),一部分事務(wù)邏輯在前端實(shí)現(xiàn),但是主要事務(wù)邏輯在服務(wù)器端實(shí)現(xiàn),形成三層結(jié)構(gòu),是一種全新的軟件系統(tǒng)構(gòu)造技術(shù)。
43、</p><p> B/S模式最大特點(diǎn)是:用戶可以通過(guò)WWW瀏覽器去訪問(wèn)Internet上的文本、數(shù)據(jù)、圖像、動(dòng)畫(huà)、視頻點(diǎn)播和聲音信息,這些信息都是由許許多多的Web服務(wù)器產(chǎn)生的,而每一個(gè)Web服務(wù)器又可以通過(guò)各種方式與數(shù)據(jù)庫(kù)服務(wù)器連接,大量的數(shù)據(jù)實(shí)際存放在數(shù)據(jù)庫(kù)服務(wù)器中??蛻舳顺薟WW瀏覽器,一般無(wú)須任何用戶程序,只需從Web服務(wù)器上下載程序到本地來(lái)執(zhí)行,在下載過(guò)程中若遇到與數(shù)據(jù)庫(kù)有關(guān)的指令,由Web服務(wù)器
44、交給數(shù)據(jù)庫(kù)服務(wù)器來(lái)解釋執(zhí)行,并返回給Web服務(wù)器,Web服務(wù)器又返回給用戶。在這種結(jié)構(gòu)中,將許許多多的網(wǎng)連接到一塊,形成一個(gè)巨大的網(wǎng),即全球網(wǎng)。B/S模型結(jié)構(gòu)圖如圖 41所示。</p><p> 圖 41 B/S模型結(jié)構(gòu)圖</p><p> 從上圖可見(jiàn),這種結(jié)構(gòu)的一個(gè)重要的特點(diǎn)是,用戶可以完全不需要安裝客戶端軟件,當(dāng)然也不需要擔(dān)心任何軟件升級(jí)和不兼容等任何客戶端所遇到的問(wèn)
45、題。相比之下,B/S模型的優(yōu)點(diǎn)顯而易見(jiàn),更適合這個(gè)網(wǎng)站的構(gòu)建,有利于網(wǎng)站的維護(hù)和擴(kuò)充。 </p><p> 4.2 SSH三大框架</p><p> SSH三大框架即為Struts + Spring + Hibernate技術(shù),典型的MVC三層結(jié)構(gòu),分為表現(xiàn)層、中間層(業(yè)務(wù)邏輯層)和數(shù)據(jù)服務(wù)層。三層體系將業(yè)務(wù)規(guī)則、數(shù)據(jù)訪問(wèn)及合法性校驗(yàn)等工作放在中間層處理
46、??蛻舳瞬恢苯优c數(shù)據(jù)庫(kù)交互,而是通過(guò)組件與中間層建立連接,再由中間層與數(shù)據(jù)庫(kù)交互。 </p><p> 表現(xiàn)層是傳統(tǒng)的JSP技術(shù),自1999年問(wèn)世以來(lái),經(jīng)過(guò)多年的發(fā)展,其廣泛的應(yīng)用和穩(wěn)定的表現(xiàn),為其作為表現(xiàn)層技術(shù)打下了堅(jiān)實(shí)的基礎(chǔ)。 </p><p> 中間層采用的是流行的Spring + Hibernate,為了將控制層與業(yè)務(wù)邏輯層分離,又細(xì)分為以下幾種。</
47、p><p> Web層,就是MVC模式里面的“C”(Controller),負(fù)責(zé)控制業(yè)務(wù)邏輯層與表現(xiàn)層的交互,調(diào)用業(yè)務(wù)邏輯層,并將業(yè)務(wù)數(shù)據(jù)返回給表現(xiàn)層作組織表現(xiàn),該系統(tǒng)的MVC框架采用Struts。</p><p> Service層(就是業(yè)務(wù)邏輯層),負(fù)責(zé)實(shí)現(xiàn)業(yè)務(wù)邏輯。業(yè)務(wù)邏輯層以DAO層為基礎(chǔ),通過(guò)對(duì)DAO組件的正面模式包裝,完成系統(tǒng)所要求的業(yè)務(wù)邏輯。 </p>
48、<p> DAO層,負(fù)責(zé)與持久化對(duì)象交互。該層封裝了數(shù)據(jù)的增、刪、查、改的操作。 </p><p> PO,持久化對(duì)象。通過(guò)實(shí)體關(guān)系映射工具將關(guān)系型數(shù)據(jù)庫(kù)的數(shù)據(jù)映射成對(duì)象,很方便地實(shí)現(xiàn)以面向?qū)ο蠓绞讲僮鲾?shù)據(jù)庫(kù),該系統(tǒng)采用Hibernate作為ORM框架。 </p><p> Spring的作用貫穿了整個(gè)中間層,將Web層、Service層、DAO層及P
49、O層無(wú)縫整合,其數(shù)據(jù)服務(wù)層用來(lái)存放數(shù)據(jù)。</p><p> 4.3 Struts框架 </p><p> Struts框架可分為以下四個(gè)主要部分,其中三個(gè)就和MVC模式緊密相關(guān):</p><p> 模型(Model),本質(zhì)上來(lái)說(shuō)在Struts中Model是一個(gè)Action類(lèi),開(kāi)發(fā)者通過(guò)其實(shí)現(xiàn)商業(yè)邏輯,同時(shí)用戶請(qǐng)求通過(guò)控制器(Controller)向
50、Action的轉(zhuǎn)發(fā)過(guò)程是基于由struts-config.xml文件描述的配置信息的。</p><p> 視圖(View),View是由與控制器Servlet配合工作的一整套JSP定制標(biāo)簽庫(kù)構(gòu)成,利用她們我們可以快速建立應(yīng)用系統(tǒng)的界面。</p><p> 控制器(Controller),本質(zhì)上是一個(gè)Servlet,將客戶端請(qǐng)求轉(zhuǎn)發(fā)到相應(yīng)的Action類(lèi)。</p><
51、p> 一堆用來(lái)做XML文件解析的工具包,Struts是用XML來(lái)描述如何自動(dòng)產(chǎn)生一些JavaBeans的屬性的,此外Struts還利用XML來(lái)描述在國(guó)際化應(yīng)用中的用戶提示信息的(這樣一來(lái)就實(shí)現(xiàn)了應(yīng)用系統(tǒng)的多語(yǔ)言支持)。</p><p> struts框架的各個(gè)部分以及相互之間的運(yùn)作: </p><p> 在使用Struts之前,咱們必先設(shè)置好JSP服務(wù)器,以便讓服務(wù)器
52、在用戶請(qǐng)求時(shí),知道該如何將指定后綴的請(qǐng)求轉(zhuǎn)到相應(yīng)的Controller-Struts ActionServle處理,當(dāng)然,這些配置信息都一般在服務(wù)器啟動(dòng)時(shí)通過(guò)web.xml文件讀入的。我們可以在web.xml定義多個(gè)Controller,為每一個(gè)應(yīng)用定義一個(gè)Controller。 </p><p> 4.3.1 控制器(Controller) </p><p> C
53、ontroller是這個(gè)框架中扮演“交通警察”的角色,當(dāng)客戶端與服務(wù)器有交互動(dòng)作時(shí),都由她來(lái)控制。Controller將HTTP請(qǐng)求封包并轉(zhuǎn)發(fā)到框架中相應(yīng)的對(duì)象,這些對(duì)象可能是一個(gè)JSP頁(yè)面或一個(gè)Action。 </p><p> Controller在web.xml中設(shè)置org.apache.struts.action.ActionServlet的一個(gè)實(shí)例,在一個(gè)完整的控制過(guò)程中,也就是處理一個(gè)HT
54、TP請(qǐng)求時(shí),在控制過(guò)程之初,這個(gè)Servlet會(huì)從一個(gè)配置文件struts-config.xml中獲取請(qǐng)求與控制動(dòng)作向?qū)?yīng)的配置信息,Controller通過(guò)這些配置信息來(lái)決定HTTP請(qǐng)求該往何處轉(zhuǎn)發(fā),而這些Action在接收到轉(zhuǎn)發(fā)來(lái)的請(qǐng)求后,實(shí)現(xiàn)真正的商業(yè)邏輯。 </p><p> Action對(duì)象要能夠調(diào)用這個(gè)ActionServlet的若干方法,通過(guò)這個(gè)有力的特性,當(dāng)Action對(duì)象在控制過(guò)程中
55、將請(qǐng)求再向別的Action對(duì)象轉(zhuǎn)發(fā)時(shí)(最初的請(qǐng)求是由ActionServlet獲取,向Action對(duì)象轉(zhuǎn)發(fā),而Action對(duì)象還可以再轉(zhuǎn)發(fā)到別的對(duì)象),我們可以將一些需要共享的數(shù)據(jù)對(duì)象通過(guò)調(diào)用一些方法放入這個(gè)Servlet相關(guān)的一些標(biāo)準(zhǔn)容器中捎帶過(guò)去。 </p><p> 4.3.2 模型(Model) </p><p> 所謂Model就是在對(duì)用戶請(qǐng)求的整個(gè)控制過(guò)
56、程中,真正處理用戶請(qǐng)求并保存處理結(jié)果的對(duì)象,在整個(gè)過(guò)程中,我們一般利用JavaBean來(lái)把一些信息保存起來(lái)以便在各個(gè)對(duì)象之間傳遞。 </p><p> 因?yàn)樵诳蚣苤?,Model對(duì)象是真正處理商業(yè)邏輯功能的對(duì)象,因此也就是框架中應(yīng)用需求實(shí)現(xiàn)相關(guān)性最大的部分。在Struts的實(shí)現(xiàn)里,Model的具體表現(xiàn)形式就是ActionForm對(duì)象和與其對(duì)應(yīng)的Action對(duì)象了。對(duì)用戶提交表單的數(shù)據(jù)進(jìn)行校驗(yàn),甚至對(duì)數(shù)據(jù)
57、進(jìn)行預(yù)處理都能在ActionForm中完成。</p><p> 通常的應(yīng)用中,一般是一個(gè)Model對(duì)象和一個(gè)請(qǐng)求頁(yè)面對(duì)應(yīng)的關(guān)系,但也可以一個(gè)Model對(duì)象對(duì)應(yīng)多個(gè)頁(yè)面請(qǐng)求。如果struts-config.xml配置文件沒(méi)有指定一個(gè)Model對(duì)象對(duì)應(yīng)的Action,那么控制器將直接把(通過(guò)Model對(duì)象完成數(shù)據(jù)封裝的)請(qǐng)求轉(zhuǎn)到一個(gè)View對(duì)象。 </p><p> 4.3.3
58、視圖(View) </p><p> View對(duì)象通常來(lái)說(shuō)都是指的JSP頁(yè)面。Struts框架實(shí)際上并沒(méi)有真正的JSP的要求規(guī)范,而是提供了大量的標(biāo)簽庫(kù)來(lái)為開(kāi)發(fā)者更簡(jiǎn)便的將JSP整合到Struts框架中。在Struts中通過(guò)標(biāo)簽定義方式的JSP頁(yè)面能夠?qū)⒂脩敉ㄟ^(guò)表單輸入的數(shù)據(jù)存入一個(gè)JavaBean中,也就是我們前面提到的ActionForm Bean。通過(guò)Action類(lèi)調(diào)用(自動(dòng)或手動(dòng))Actio
59、nForm的校驗(yàn)方法來(lái)檢查用戶輸入的數(shù)據(jù),如果發(fā)現(xiàn)不合法的數(shù)據(jù),再通過(guò)Struts的一個(gè)通用機(jī)制將錯(cuò)誤信息返回給用戶顯示。</p><p> 4.3.4 struts-config.xml </p><p> 前面多次提到的struts-config.xml配置文件是整個(gè)框架的主心骨。web.xml文件定義了一個(gè)請(qǐng)求到來(lái)應(yīng)向何處轉(zhuǎn)發(fā)后,后面的工作就全權(quán)由struts-conf
60、ig.xml管理控制了。可以說(shuō)struts-config.xml就是整個(gè)Struts框架的“大腦”,只有它清楚所有請(qǐng)求與動(dòng)作的映射關(guān)系,如今的應(yīng)用系統(tǒng),XML形式的配置文件越來(lái)越多,如果整個(gè)系統(tǒng)只使用一個(gè)這樣的配置文件的話,那么保持整個(gè)系統(tǒng)的模塊化和可維護(hù)性都非常的輕松。</p><p> 使用配置文件來(lái)描述請(qǐng)求-動(dòng)作的控制過(guò)程和相互關(guān)系,而不是在代碼中將對(duì)象之間的調(diào)用關(guān)系寫(xiě)死,那么當(dāng)應(yīng)用系統(tǒng)有變動(dòng)時(shí),我們只用
61、修改配置文件就行了,而不是再重新編譯發(fā)布程序了。</p><p> Controller通過(guò)struts-config.xml文件的配置信息確定當(dāng)有請(qǐng)求時(shí)應(yīng)該調(diào)用那個(gè)對(duì)象來(lái)處理,從效率的角度出發(fā),這些信息都是在系統(tǒng)啟動(dòng)時(shí)讀入并存在內(nèi)存中的。 </p><p> 4.4 Spring框架 </p><p> Spring是一個(gè)開(kāi)源框架,它由
62、Rod Johnson創(chuàng)建。它是為了解決企業(yè)應(yīng)用開(kāi)發(fā)的復(fù)雜性而創(chuàng)建的。Spring使用基本的JavaBean來(lái)完成以前只可能由EJB完成的事情。然而,Spring的用途不僅限于服務(wù)器端的開(kāi)發(fā)。從簡(jiǎn)單性、可測(cè)試性和松耦合的角度而言,任何Java應(yīng)用都可以從Spring中受益。</p><p> 目的:解決企業(yè)應(yīng)用開(kāi)發(fā)的復(fù)雜性。</p><p> 功能:使用基本的JavaBean
63、代替EJB,并提供了更多的企業(yè)應(yīng)用功能 范圍:任何Java應(yīng)用 通過(guò)Spring提供的IOC容器,我們可以將對(duì)象之間的依賴(lài)關(guān)系交由Spring進(jìn)行控制,避免硬編碼所造成的過(guò)度程序耦合。有了Spring,用戶不必再為單實(shí)例模式類(lèi)、屬性文件解析等這些底層的需求編寫(xiě)代碼,可以更專(zhuān)注于上層的應(yīng)用。</p><p> Spring的特點(diǎn):</p><p> AOP編程的支持:
64、 通過(guò)Spring提供的AOP功能,方便進(jìn)行面向切面的編程,許多不容易用傳統(tǒng)OOP實(shí)現(xiàn)的功能可以通過(guò)AOP輕松應(yīng)付。</p><p> <聲明式事務(wù)的支持:在Spring中,我們可以從單調(diào)煩悶的事務(wù)管理代碼中解脫出來(lái),通過(guò)聲明方式靈活地進(jìn)行事務(wù)的管理,提高開(kāi)發(fā)效率和質(zhì)量。</p><p> 方便程序的測(cè)試:可以用非容器依賴(lài)的編程方式進(jìn)行幾乎所有的測(cè)試工作,在Spring
65、里,測(cè)試不再是昂貴的操作,而是隨手可做的事情。</p><p> 方便集成各種優(yōu)秀框架: Spring不排斥各種優(yōu)秀的開(kāi)源框架,相反,Spring可以降低各種框架的使用難度,Spring提供了對(duì)各種優(yōu)秀框架(如Struts、Hibernate、Session)等的直接支持。</p><p> 降低Java EE API的使用難度:Spring對(duì)很多難用的J
66、ava EE API(如JDBC,Java Mail,遠(yuǎn)程調(diào)用等)提供了一個(gè)薄薄的封裝層,通過(guò)Spring的簡(jiǎn)易封裝,這些Java EE API的使用難度大為降低。</p><p> 4.5 Hibernate框架 </p><p> Hibernate是一種Java語(yǔ)言下的對(duì)象關(guān)系映射解決方案。它是一種自由、開(kāi)源的軟件。它
67、用來(lái)把對(duì)象模型表示的對(duì)象映射到基于SQL的關(guān)系模型結(jié)構(gòu)中去,為面向?qū)ο蟮念I(lǐng)域模型到傳統(tǒng)的關(guān)系型數(shù)據(jù)庫(kù)的映射,提供了一個(gè)使用方便的框架。 </p><p> Hibernate不僅管理Java類(lèi)到數(shù)據(jù)庫(kù)表的映射(包括從Java數(shù)據(jù)類(lèi)型到SQL數(shù)據(jù)類(lèi)型的映射),還提供數(shù)據(jù)查詢和獲取數(shù)據(jù)的方法,可以大幅度減少開(kāi)發(fā)時(shí)人工使用SQL和JDBC處理數(shù)據(jù)的時(shí)間。 </p><p>
68、 Hibernate對(duì)JDBC進(jìn)行了非常輕量級(jí)的對(duì)象封裝,使得Java程序員可以隨心所欲的使用對(duì)象編程思維來(lái)操縱數(shù)據(jù)庫(kù)。Hibernate可以應(yīng)用在任何使用JDBC的場(chǎng)合,它既可以在Java的客戶端程序使用,也可以在Servlet/JSP的Web應(yīng)用中使用。最具革命意義的是,Hibernate可以在應(yīng)用EJB(Enterprise JavaBeans是Java應(yīng)用于企業(yè)計(jì)算的框架)的J2EE架構(gòu)中取代CMP,完成數(shù)據(jù)持久化的
69、重任。</p><p> 它的設(shè)計(jì)目標(biāo)是將軟件開(kāi)發(fā)人員從大量相同的數(shù)據(jù)持久層相關(guān)編程工作中解放出來(lái)。無(wú)論是從設(shè)計(jì)草案還是從一個(gè)遺留數(shù)據(jù)庫(kù)開(kāi)始,開(kāi)發(fā)人員都可以采用Hibernate。 </p><p> Hibernate的優(yōu)點(diǎn): </p><p> ?。?)Hibernate使用Java反射機(jī)制而不是字節(jié)碼增強(qiáng)程序來(lái)實(shí)現(xiàn)透明性。</p&
70、gt;<p> (2)Hibernate的性能非常好,因?yàn)樗莻€(gè)輕量級(jí)框架。映射的靈活性很出色。</p><p> ?。?)Hibernate支持各種關(guān)系數(shù)據(jù)庫(kù),從一對(duì)一到多對(duì)多的各種復(fù)雜關(guān)系。</p><p> 4.6 Tomcat 6.0</p><p> Tomcat 服務(wù)器是一個(gè)免費(fèi)的開(kāi)放源代碼的Web 應(yīng)用服務(wù)器,屬于輕量級(jí)應(yīng)用服務(wù)器
71、,在中小型系統(tǒng)和并發(fā)訪問(wèn)用戶不是很多的場(chǎng)合下被普遍使用,是開(kāi)發(fā)和調(diào)試JSP 程序的首選。先進(jìn)的技術(shù)、穩(wěn)定的性能、源碼開(kāi)放和免費(fèi)獲取的機(jī)制,使得Tomcat深受Java愛(ài)好者的喜愛(ài)并得到了許多軟件開(kāi)發(fā)商的認(rèn)可,成為目前相當(dāng)流行的Web應(yīng)用服務(wù)器。</p><p> 4.7 Jsp技術(shù)</p><p> JSP全名為java server page,其根本是一個(gè)簡(jiǎn)化的Servlet設(shè)計(jì),
72、他實(shí)現(xiàn)了Html語(yǔ)法中的java擴(kuò)張(以 <%, %>形式)。JSP與Servlet一樣,是在服務(wù)器端執(zhí)行的,通常返回給客戶端的就是一個(gè)HTML文本,因此客戶端只要有瀏覽器就能瀏覽。Web服務(wù)器在遇到訪問(wèn)JSP網(wǎng)頁(yè)的請(qǐng)求時(shí),首先執(zhí)行其中的程序段,然后將執(zhí)行結(jié)果連同JSP文件中的HTML代碼一起返回給客戶端。插入的Java程序段可以操作數(shù)據(jù)庫(kù)、重新定向網(wǎng)頁(yè)等,以實(shí)現(xiàn)建立動(dòng)態(tài)網(wǎng)頁(yè)所需要的功能。</p><p&
73、gt; JSP技術(shù)使用Java編程語(yǔ)言編寫(xiě)類(lèi)XML的tags和javaScript,來(lái)封裝產(chǎn)生動(dòng)態(tài)網(wǎng)頁(yè)的處理邏輯。網(wǎng)頁(yè)還能通過(guò)tags和javaScript訪問(wèn)存在于服務(wù)端的資源的應(yīng)用邏輯。JSP將網(wǎng)頁(yè)邏輯與網(wǎng)頁(yè)設(shè)計(jì)的顯示分離,支持可重用的基于組件的設(shè)計(jì),使基于Web的應(yīng)用程序的開(kāi)發(fā)變得迅速和容易。JSP(Java Server Pages)是一種動(dòng)態(tài)頁(yè)面技術(shù),它的主要目的是將表示邏輯從Servlet中分離出來(lái)。</p>
74、<p> JSP頁(yè)面由HTML代碼和嵌入其中的Java代碼所組成。服務(wù)器在頁(yè)面被客戶端請(qǐng)求以后對(duì)這些Java代碼進(jìn)行處理,然后將生成的HTML頁(yè)面返回給客戶端的瀏覽器。Java Servlet是JSP的技術(shù)基礎(chǔ),而且大型的Web應(yīng)用程序的開(kāi)發(fā)需要Java Servlet和JSP配合才能完成。JSP具備了Java技術(shù)的簡(jiǎn)單易用,完全的面向?qū)ο螅哂衅脚_(tái)無(wú)關(guān)性且安全可靠,主要面向因特網(wǎng)的所有特點(diǎn)。</p><
75、;p> 4.8 MyEclipse 10開(kāi)發(fā)工具</p><p> MyEclipse,是一個(gè)十分優(yōu)秀的用于開(kāi)發(fā)Java, J2EE的Eclipse插件集合,MyEclipse的功能非常強(qiáng)大,支持也十分廣泛,尤其是對(duì)各種開(kāi)源產(chǎn)品的支持十分不錯(cuò)。</p><p> MyEclipse企業(yè)級(jí)工作平臺(tái)(MyEclipse Enterprise Workbench ,簡(jiǎn)稱(chēng)MyEcli
76、pse)是對(duì)EclipseIDE的擴(kuò)展,利用它我們可以在數(shù)據(jù)庫(kù)和JavaEE的開(kāi)發(fā)、發(fā)布以及應(yīng)用程序服務(wù)器的整合方面極大的提高工作效率。它是功能豐富的JavaEE集成開(kāi)發(fā)環(huán)境,包括了完備的編碼、調(diào)試、測(cè)試和發(fā)布功能,完整支持HTML、Struts、JSP、CSS、Javascript、Spring、SQL、Hibernate。</p><p> 簡(jiǎn)單而言,MyEclipse是Eclipse的插件,也是一款功能強(qiáng)
77、大的J2EE集成開(kāi)發(fā)環(huán)境,支持代碼編寫(xiě)、配置、測(cè)試以及除錯(cuò)。</p><p> 4.9 MySQL數(shù)據(jù)庫(kù)簡(jiǎn)介</p><p> MySQL是一個(gè)開(kāi)放源碼的小型關(guān)聯(lián)式數(shù)據(jù)庫(kù)管理系統(tǒng),開(kāi)發(fā)者為瑞典MySQL AB公司。目前MySQL被廣泛地應(yīng)用在Internet上的中小型網(wǎng)站中。由于其體積小、速度快、總體擁有成本低,尤其是開(kāi)放源碼這一特點(diǎn),許多中小型網(wǎng)站為了降低網(wǎng)站總體擁有成本而選擇了M
78、ySQL作為網(wǎng)站數(shù)據(jù)庫(kù)。</p><p> MySQL是一個(gè)快速的、多線程、多用戶和健壯的SQL數(shù)據(jù)庫(kù)服務(wù)器。它的主要功能只在組織和管理很龐大或復(fù)雜的信息和基于WEB的庫(kù)存查詢請(qǐng)求不僅僅為客戶提供信息,而且還可以為您自己使用數(shù)據(jù)庫(kù)可以提供如下功能: </p><p> 減少記錄編檔的時(shí)間; </p><p> 減小記
79、錄檢索時(shí)間; </p><p><b> 靈活的查找序列; </b></p><p> 靈活的輸出格式; </p><p> 多個(gè)用戶同時(shí)訪問(wèn)記錄; </p><p> 4.10 SQLyog圖形化管理MYSQL數(shù)據(jù)庫(kù)工具</p><p>
80、; SQLyog 是一個(gè)易于使用的、快速而簡(jiǎn)潔的圖形化管理MYSQL數(shù)據(jù)庫(kù)的工具,使用SQLyog可以快速直觀地讓您從世界的任何角落通過(guò)網(wǎng)絡(luò)來(lái)維護(hù)遠(yuǎn)端的MySQL數(shù)據(jù)庫(kù)。</p><p><b> 主要功能:</b></p><p> 快速備份和恢復(fù)數(shù)據(jù)。</p><p> 支持客戶端挑選、過(guò)濾數(shù)據(jù)。</p><p&
81、gt; 批量執(zhí)行很大的SQL腳本文件。</p><p> 以直觀的表格界面建立或編輯數(shù)據(jù)表。</p><p><b> 進(jìn)行索引管理。</b></p><p><b> 創(chuàng)建或刪除數(shù)據(jù)庫(kù)。</b></p><p> 操縱數(shù)據(jù)庫(kù)的各種權(quán)限:庫(kù)、表、字段。</p><p&g
82、t; 輸出數(shù)據(jù)表結(jié)構(gòu)/數(shù)據(jù)為SQL腳本。</p><p> 支持對(duì)數(shù)據(jù)表的各種高級(jí)屬性的修改。</p><p> 查看數(shù)據(jù)服務(wù)器的各種狀態(tài)、參數(shù)等。</p><p> 5 系統(tǒng)的具體設(shè)計(jì)與實(shí)現(xiàn)</p><p> 5.1 數(shù)據(jù)庫(kù)設(shè)計(jì)</p><p> 5.1.1 數(shù)據(jù)庫(kù)的總體設(shè)計(jì)</p>&
83、lt;p> 數(shù)據(jù)庫(kù)是醫(yī)院網(wǎng)絡(luò)預(yù)約掛號(hào)系統(tǒng)的核心部分.它不僅反映數(shù)據(jù)本身的內(nèi)容,而且反映數(shù)據(jù)庫(kù)之間的聯(lián)系。在數(shù)據(jù)庫(kù)中,是用數(shù)據(jù)模型實(shí)體關(guān)系圖來(lái)抽象、表</p><p> 示處理現(xiàn)實(shí)世界中的數(shù)據(jù)和信息。以下給出了通過(guò)MySQL Workbench(數(shù)據(jù)庫(kù)建模工具)設(shè)計(jì)的ER(數(shù)據(jù)庫(kù)建模)圖,如圖 51。</p><p> 圖 51 數(shù)據(jù)庫(kù)建模圖</p><p
84、> 在完成系統(tǒng)的ER圖之后,需要將ER模型轉(zhuǎn)化為關(guān)系模型,也就是說(shuō),要設(shè)計(jì)出數(shù)據(jù)庫(kù)所需要的表格。在這里,選用的是關(guān)系數(shù)據(jù)庫(kù)。因?yàn)殛P(guān)系數(shù)據(jù)庫(kù)中的二維表格可以很清楚地描述數(shù)據(jù)之間的聯(lián)系。</p><p> 在系統(tǒng)中定義的表格都嚴(yán)格地按照范式的思想和要求完成,數(shù)據(jù)庫(kù)中的所有表格都達(dá)到了三范式的要求。根據(jù)系統(tǒng)ER圖,針對(duì)本系統(tǒng)的特點(diǎn),在對(duì)所搜集的數(shù)據(jù)進(jìn)行規(guī)范化之后,定義了如下9張表格。通過(guò)對(duì)這9張表格的操作可以
85、較好地完成系統(tǒng)設(shè)計(jì)的各項(xiàng)功能,九張表格之間有著不同程度的聯(lián)系。</p><p> 5.1.2 數(shù)據(jù)庫(kù)字典</p><p> 此軟件文檔系統(tǒng)采用MySQL數(shù)據(jù)庫(kù)管理系統(tǒng)。首先在MySQL中建立一個(gè)數(shù)據(jù)庫(kù),將其命名為hospital,然后根據(jù)數(shù)據(jù)庫(kù)的邏輯結(jié)構(gòu)分析創(chuàng)建9張數(shù)據(jù)表。</p><p> t_office:科室信息表用于存放所有科室的信息,如表 5-1;&
86、lt;/p><p> t_doctor: 醫(yī)師信息表用于存放所有醫(yī)師的信息,如表 5-2;</p><p> t_order: 預(yù)約信息表用于存放所有患者的掛號(hào)信息,如表 5-3;</p><p> t_patient: 用戶信息表用于存放所有用戶的信息,如表 5-4;</p><p> t_hospital:醫(yī)院信息表用于存放關(guān)于醫(yī)院的
87、信息,如表 5-5;</p><p> t_healthtype: 醫(yī)療常識(shí)類(lèi)別表用于存放醫(yī)療常識(shí)的類(lèi)別,如表 5-6;</p><p> t_health: 醫(yī)療常識(shí)表用于存放醫(yī)療常識(shí),如表 5-7;</p><p> t_news: 新聞信息表用于存放關(guān)于醫(yī)院的新聞信息,如表 5-8;</p><p> t_newstype: 新
88、聞?lì)悇e表用于存放新聞的類(lèi)型如:院內(nèi)新聞、行業(yè)新聞等,如表 5-9;</p><p> 九張表的表結(jié)果如下:</p><p> ?。?)t_office:科室信息表結(jié)構(gòu)</p><p> 表 5-1 科室信息表</p><p> ?。?)t_doctor:醫(yī)師信息表結(jié)構(gòu)</p><p> 表 5-2 醫(yī)師信息表&
89、lt;/p><p> ?。?)t_order:預(yù)約信息表結(jié)構(gòu)</p><p> 表 5-3 預(yù)約信息表</p><p> (4)t_patient: 用戶信息表結(jié)構(gòu)</p><p> 表 5-4 用戶信息</p><p> ?。?)t_hospital:醫(yī)院信息表結(jié)構(gòu)</p><p> 表
90、5-5 醫(yī)院信息表</p><p> ?。?)t_healthtype:醫(yī)療常識(shí)類(lèi)型表結(jié)構(gòu)</p><p> 表 5-6 醫(yī)療常識(shí)類(lèi)型表</p><p> ?。?)t_health:醫(yī)療常識(shí)表結(jié)構(gòu)</p><p> 表 5-7 醫(yī)療常識(shí)表</p><p> ?。?)t_news:新聞信息表結(jié)構(gòu)</p>
91、<p> 表 5-8 新聞信息表</p><p> ?。?)t_newstype:新聞?lì)悇e表結(jié)構(gòu)</p><p> 表 5-9 新聞?lì)悇e表</p><p> 5.2 系統(tǒng)流程設(shè)計(jì)</p><p> 系統(tǒng)在用戶登錄的時(shí)候,除了對(duì)賬號(hào)的合法性進(jìn)行判斷外,還對(duì)賬號(hào)的類(lèi)型判斷,從而顯示不同的界面給用戶。</p>&
92、lt;p> 普通用戶可以查詢系統(tǒng)內(nèi)已有的科室信息和醫(yī)師信息,根據(jù)自己情況預(yù)約或修改個(gè)人信息。</p><p> 醫(yī)生登陸后可以查看自己的就診信息、修改個(gè)人信息、發(fā)表或修改醫(yī)療常識(shí)。</p><p> 根據(jù)這些功能的要求,系統(tǒng)的總體流程圖如圖 52。</p><p> 圖 52 系統(tǒng)的總體流程</p><p> 5.3 系
93、統(tǒng)功能模塊設(shè)計(jì)</p><p> 通過(guò)對(duì)用戶的業(yè)務(wù)流程分析,我們可以分析出醫(yī)院網(wǎng)上預(yù)約系統(tǒng)大致可以分為兩類(lèi)用戶:一類(lèi)是普通預(yù)約者,另一類(lèi)是醫(yī)院內(nèi)部管理人員。</p><p> 根據(jù)權(quán)限的不同這個(gè)系統(tǒng)總體功能可以分為三大模塊:</p><p> 5.3.1 用戶模塊</p><p> 預(yù)約者來(lái)說(shuō),在網(wǎng)絡(luò)上可以實(shí)現(xiàn)以下功能:</p&
94、gt;<p> ?。?)需要掌握最新的門(mén)診時(shí)間表,專(zhuān)家或醫(yī)生的個(gè)人簡(jiǎn)介、照片、職稱(chēng)、掛號(hào)費(fèi),以及每個(gè)診次的所余掛號(hào)數(shù)量。這是預(yù)約之前必須了解的信息;</p><p> (2)按需進(jìn)行預(yù)約,“足不出戶選醫(yī)生”??梢园瘁t(yī)生預(yù)約,同時(shí)預(yù)約者可以修改個(gè)人的相關(guān)信息;</p><p> (3)如果預(yù)約者預(yù)約當(dāng)天不能按時(shí)應(yīng)診,可以提前取消相關(guān)診次的預(yù)約,相應(yīng)診次的號(hào)額返回;如果又決定
95、預(yù)約可進(jìn)行再次預(yù)約。</p><p> ?。?)查詢歷次預(yù)約記錄的清單;</p><p> ?。?)如果時(shí)間段已被選擇,則需要預(yù)約患者重新選擇時(shí)間段,如果系統(tǒng)有空閑,預(yù)約患者也滿意,則進(jìn)行預(yù)約,如果,不選擇或不滿意,則選擇放棄。</p><p> 5.3.2 醫(yī)生模塊</p><p> 對(duì)于醫(yī)務(wù)人員來(lái)說(shuō),在網(wǎng)絡(luò)上可以實(shí)現(xiàn)以下功能:<
96、/p><p> 醫(yī)生可以及時(shí)修改個(gè)人的信息如:個(gè)人簡(jiǎn)介,照片,專(zhuān)長(zhǎng)等。</p><p> ?。?) 發(fā)表自己一些醫(yī)療常識(shí)、健康養(yǎng)生等文章,同時(shí)也可以修改自己已發(fā)表的文章。</p><p> ?。?) 醫(yī)生可以查看自己的出診記錄,統(tǒng)計(jì)預(yù)約病人情況。</p><p> 5.3.3 管理員模塊</p><p> 管理員可以
97、管理醫(yī)生、用戶信息,如刪除賬號(hào),還可以對(duì)醫(yī)院所屬科室進(jìn)行添加、修改、刪除的操作、也可以對(duì)科室所屬醫(yī)師進(jìn)行添加、刪除和修改的操作,同時(shí)還要負(fù)責(zé)對(duì)醫(yī)院公告信息、新聞、醫(yī)院簡(jiǎn)介的及時(shí)修改更新。</p><p><b> 6 系統(tǒng)的實(shí)現(xiàn)</b></p><p> 6.1 系統(tǒng)的部署</p><p> 醫(yī)院網(wǎng)絡(luò)預(yù)約掛號(hào)系統(tǒng)是一個(gè)基于WEB的應(yīng)用
98、系統(tǒng),在其B/S模式結(jié)構(gòu)中主要有以下節(jié)點(diǎn)組成:瀏覽器、Internet、Web服務(wù)器和數(shù)據(jù)庫(kù)服務(wù)器。下圖 61為B/S模式結(jié)構(gòu)圖。</p><p> 圖 61 B/S模式結(jié)構(gòu)圖</p><p> 6.2 系統(tǒng)的實(shí)施環(huán)境</p><p> 6.2.1 服務(wù)器端</p><p> 服務(wù)器:CPU 2G</p><
99、;p> 操作系統(tǒng):Windows7</p><p> JDK(Java Development Kit):JDK 6.0</p><p> 數(shù)據(jù)庫(kù):MySQL數(shù)據(jù)庫(kù)</p><p> Web服務(wù)器:Tomcat 6.0</p><p> 瀏覽器:IE6.0及以上</p><p><b> 6
100、.2.2 客戶端</b></p><p> 計(jì)算機(jī):可正常上網(wǎng)娛樂(lè)即可</p><p> 操作系統(tǒng):WindowsXP、Windows7等都可以</p><p> 瀏覽器:IE6.0以上</p><p> 7 系統(tǒng)功能的實(shí)現(xiàn)</p><p> 7.1 主頁(yè)面模塊</p><
101、p> 主頁(yè)主要用來(lái)顯示醫(yī)院的最新信息如:最新的新聞、公告等,它主要包括預(yù)約掛號(hào)、醫(yī)院概況、科室導(dǎo)航、專(zhuān)家介紹、醫(yī)療常識(shí)、新聞動(dòng)態(tài)、登陸等模塊。前端界面如圖 71。</p><p> 圖 71 主頁(yè)面界面</p><p><b> 主要代碼的實(shí)現(xiàn)</b></p><p> @Action(value="home&quo
102、t;)</p><p> public String execute() {</p><p> ourNewslist = ns.findByType("newsTypeId", "院內(nèi)新聞");</p><p> otherNewslist = ns.findByType("newsTypeId&quo
103、t;, "行業(yè)新聞");</p><p> return "success";</p><p><b> }</b></p><p> 7.2 預(yù)約掛號(hào)模塊</p><p> 通過(guò)該功能,用戶可以查詢?cè)撓到y(tǒng)內(nèi)所有的科室的醫(yī)師信息如圖 72,并根據(jù)用戶自己的實(shí)際需要和實(shí)際
104、情況選擇合適的醫(yī)師、合適的時(shí)間進(jìn)行就醫(yī)。如圖為預(yù)約查詢主頁(yè)面用戶可以選擇適合的醫(yī)生。</p><p> 圖 72 預(yù)約掛號(hào)查詢醫(yī)生界面</p><p> 用戶選擇醫(yī)生后可以查看醫(yī)生信息,如果滿意并且選擇合適的預(yù)約時(shí)間就可以進(jìn)入預(yù)約界面,如圖 73。</p><p> 圖 73 醫(yī)生信息界面</p><p> 在預(yù)約界面填寫(xiě)患者的
105、信息后提交即可完成掛號(hào)的預(yù)約,如圖 74。</p><p> 圖 74 預(yù)約信息界面</p><p><b> 主要代碼的實(shí)現(xiàn):</b></p><p> @Action(value="orderIndex")</p><p> public String toOrderIndex(){&
106、lt;/p><p> officelist = officeService.findAll();</p><p> for(int i = 0;i <officelist.size();i++){</p><p> List<Doctor> list2 = doctorService.findByOfficeId(officelist.get(i
107、).getId());</p><p> doctorlists.add(list2);</p><p><b> }</b></p><p> return "success";</p><p><b> }</b></p><p> @Act
108、ion(value="order")</p><p> public String order(){</p><p> doctor = doctorService.findById(doctorId);</p><p> office = officeService.findById(doctor.getOfficeId());</
109、p><p> List<Date> datelist = DateUtil.getNextDays(7);</p><p> for(int i = 0 ; i < datelist.size(); i ++){</p><p> Date d = datelist.get(i);</p><p> String wee
110、k = DateUtil.getWeek(d);</p><p> String goodtime = DateUtil.goodTime(d);</p><p> weeklist.add(week);</p><p> monthlist.add(goodtime);</p><p><b> }</b>&l
111、t;/p><p> for(int j = 0; j < monthlist.size(); j ++){</p><p> List<List<Order>> list2 = new ArrayList<List<Order>>();</p><p> List<Order> orderlist1
112、 = orderService.findByOrderTime(monthlist.get(j)+"9:00-10:00",doctorId);</p><p> List<Order> orderlist2 = orderService.findByOrderTime(monthlist.get(j)+"10:00-11:00",doctorId);<
113、/p><p> List<Order> orderlist3 = orderService.findByOrderTime(monthlist.get(j)+"13:30-14:30",doctorId);</p><p> List<Order> orderlist4 = orderService.findByOrderTime(monthli
114、st.get(j)+"14:30-15:30",doctorId);</p><p> List<Order> orderlist5 = orderService.findByOrderTime(monthlist.get(j)+"15:30-16:30",doctorId);</p><p> list2.add(orderlist
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 某醫(yī)院預(yù)約掛號(hào)管理系統(tǒng)的畢業(yè)設(shè)計(jì)論文
- 某醫(yī)院預(yù)約掛號(hào)管理系統(tǒng)的設(shè)計(jì)--畢業(yè)設(shè)計(jì)
- 醫(yī)院網(wǎng)上預(yù)約掛號(hào)系統(tǒng)-畢業(yè)論文
- 醫(yī)院預(yù)約掛號(hào)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)【畢業(yè)論文設(shè)計(jì)】
- 醫(yī)院預(yù)約掛號(hào)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)——測(cè)試【畢業(yè)論文設(shè)計(jì)】
- 醫(yī)院預(yù)約掛號(hào)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文
- 醫(yī)院預(yù)約掛號(hào)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文
- 本科畢設(shè)論文醫(yī)院預(yù)約掛號(hào)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 預(yù)約掛號(hào)管理系統(tǒng)的設(shè)計(jì)與開(kāi)發(fā)畢業(yè)論文
- 醫(yī)院門(mén)診預(yù)約掛號(hào)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
- 醫(yī)院預(yù)約掛號(hào)平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 醫(yī)院網(wǎng)絡(luò)預(yù)約掛號(hào)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 醫(yī)院預(yù)約掛號(hào)法律關(guān)系研究.pdf
- 醫(yī)院門(mén)診預(yù)約掛號(hào)系統(tǒng)的運(yùn)用
- 軟件工程畢業(yè)論文-預(yù)約掛號(hào)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 長(zhǎng)江醫(yī)院網(wǎng)上預(yù)約掛號(hào)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 基于SSH的醫(yī)院預(yù)約掛號(hào)平臺(tái)設(shè)計(jì)與實(shí)現(xiàn).pdf
- 北侖人民醫(yī)院如何預(yù)約掛號(hào)
- 如何網(wǎng)上預(yù)約掛號(hào)
- 千佛山醫(yī)院預(yù)約掛號(hào)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
評(píng)論
0/150
提交評(píng)論