酒店客房預(yù)定管理系統(tǒng)畢業(yè)設(shè)計(jì).doc

上傳人:good****022 文檔編號(hào):116865228 上傳時(shí)間:2022-07-06 格式:DOC 頁數(shù):38 大?。?.31MB
收藏 版權(quán)申訴 舉報(bào) 下載
酒店客房預(yù)定管理系統(tǒng)畢業(yè)設(shè)計(jì).doc_第1頁
第1頁 / 共38頁
酒店客房預(yù)定管理系統(tǒng)畢業(yè)設(shè)計(jì).doc_第2頁
第2頁 / 共38頁
酒店客房預(yù)定管理系統(tǒng)畢業(yè)設(shè)計(jì).doc_第3頁
第3頁 / 共38頁

下載文檔到電腦,查找使用更方便

15 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《酒店客房預(yù)定管理系統(tǒng)畢業(yè)設(shè)計(jì).doc》由會(huì)員分享,可在線閱讀,更多相關(guān)《酒店客房預(yù)定管理系統(tǒng)畢業(yè)設(shè)計(jì).doc(38頁珍藏版)》請?jiān)谘b配圖網(wǎng)上搜索。

1、 酒店客房預(yù)定管理系統(tǒng) 目 錄摘要1Abstract21、引言31.1 選題背景31.2 設(shè)計(jì)思想31.3 課題意義32、項(xiàng)目概述52.1 課題簡要說明52.2 可行性研究52.2.1 經(jīng)濟(jì)可行性52.2.2 技術(shù)可行性52.2.3運(yùn)行可行性62.2.4 時(shí)間可行性62.2.5 法律可行性:63、需求分析63.1 功能需求63.2 性能需求74、相關(guān)技術(shù)介紹74.1 JSP技術(shù)簡介74.2 JSP工作原理84.3 JSP體系結(jié)構(gòu)84.4 JSP的特點(diǎn)94.5 SQLSERVER 2000 數(shù)據(jù)庫94.6 JDBC介紹104.7 系統(tǒng)數(shù)據(jù)庫連接124.8 BS模式與C/S模式的比較分析165、系

2、統(tǒng)分析185.1 系統(tǒng)功能分析185.2 功能模塊圖195.3 處理流程設(shè)計(jì)195.3.1 數(shù)據(jù)增加流程195.3.2 數(shù)據(jù)修改流程205.3.3 數(shù)據(jù)刪除流程216、系統(tǒng)設(shè)計(jì)226.1 前臺(tái)模塊設(shè)計(jì)226.1.1 首頁226.1.2 用戶注冊236.1.3 用戶登陸236.1.4 客房搜索246.1.5 客房預(yù)訂246.1.6 用戶留言256.2 后臺(tái)模塊設(shè)計(jì)256.2.1 管理員登陸256.2.2 客房管理266.2.3 客房類別管理266.2.4 留言管理276.2.5 預(yù)定信息管理276.2.6 剩余客房查詢286.2.7 管理員管理286、系統(tǒng)調(diào)試與測試296.1 程序調(diào)試296.2

3、 程序的測試296.2.1 測試的重要性及目的296.2.2 測試的步驟316.2.3 測試的主要內(nèi)容31結(jié)束語33致謝35參考文獻(xiàn)36摘要隨著人員流動(dòng)規(guī)模的不斷擴(kuò)大,賓館數(shù)量的急劇增加,有關(guān)客房管理的各種信息量也在不斷成倍增長。面對龐大的信息量,就需要有酒店客房訂購管理系統(tǒng)來提高客房管理工作的效率。通過這樣的系統(tǒng),我們可以做到信息的規(guī)范管理和快速查詢,從而減少了管理方面的工作量。本系統(tǒng)用JSP語言來編寫酒店客房預(yù)定系統(tǒng),數(shù)據(jù)庫用SQLSERVER2000來連接系統(tǒng),即JSP + SQLSERVER2000模式完成整個(gè)設(shè)計(jì)工作。本系統(tǒng)全部基于Internet網(wǎng)絡(luò),以JSP語言對網(wǎng)站進(jìn)行開發(fā),注

4、重用戶與網(wǎng)站的交互性。因此在這樣的背景下,針對當(dāng)前Internet網(wǎng)絡(luò)發(fā)展趨勢來計(jì)酒店客房預(yù)定系統(tǒng)就成為了當(dāng)今應(yīng)用軟件的首選體系結(jié)構(gòu)。關(guān)鍵詞 酒店客房預(yù)定系統(tǒng) 系統(tǒng)設(shè)計(jì) 信息管理AbstractAlong with the undertake transfer of personnel scales unceasing expansion, guesthouse quantitys sharp growth, related guest room managements each kind of information content also in unceasingly doubled a

5、nd re-doubled grows. Facing the huge information content, needs to have the hotel guest room order management system management system to enhance the guest room supervisory work the efficiency. Through such system, we may achieve the information the standard management and the fast inquiry, thus red

6、uced the management aspect work load.This system compiles the hotel guest room predetermined system with the JSP language, the database with the SQLSERVER2000 connected system, namely JSP + the SQLSERVER2000 pattern completes the entire project work. This system based on the Internet network, carrie

7、s on the development completely by the JSP language to the website, pays great attention the user and the website interactive. Therefore under such background, counts the hotel guest room predetermined system in view of the current Internet network trend of development to become now application soft

8、wares first choice architecture. Key word Hotel guest room predetermined system System design Information management1、引言1.1 選題背景隨著人員流動(dòng)規(guī)模的不斷擴(kuò)大,賓館數(shù)量的急劇增加,有關(guān)客房管理的各種信息量也在不斷成倍增長。面對龐大的信息量,就需要有酒店客房訂購管理系統(tǒng)來提高客房管理工作的效率。通過這樣的系統(tǒng),我們可以做到信息的規(guī)范管理和快速查詢,從而減少了管理方面的工作量。傳統(tǒng)手工的客房信息管理,管理過程繁瑣而復(fù)雜,執(zhí)行效率低,并且易于出錯(cuò)。通過這樣的系統(tǒng),我們可以做到信

9、息的規(guī)范管理和快速查詢,實(shí)現(xiàn)了客房信息管理的系統(tǒng)化、規(guī)范化和自動(dòng)化,這樣不僅減少了管理工作量,還提高了管理效率,降低了管理成本。酒店客房預(yù)定系統(tǒng)對賓館加強(qiáng)客房信息管理有著極其重要的作用,就一所客房數(shù)量較大的賓館來說,它的設(shè)計(jì)內(nèi)容非常復(fù)雜而且繁多,比如擁有客房信息管理、客房類別信息管理、預(yù)定信息管理等功能,而且設(shè)計(jì)的模塊也很多,比如信息統(tǒng)計(jì)模塊,報(bào)表設(shè)計(jì)模塊,模糊查詢模塊等等。1.2 設(shè)計(jì)思想本系統(tǒng)用JSP語言來編寫酒店客房預(yù)定系統(tǒng),數(shù)據(jù)庫用SQLSERVER2000來連接系統(tǒng),即JSP + SQLSERVER2000模式完成整個(gè)設(shè)計(jì)工作。本系統(tǒng)全部基于Internet網(wǎng)絡(luò),以JSP語言對網(wǎng)站進(jìn)

10、行開發(fā),注重用戶與網(wǎng)站的交互性。因此在這樣的背景下,針對當(dāng)前Internet網(wǎng)絡(luò)發(fā)展趨勢來計(jì)酒店客房預(yù)定系統(tǒng)就成為了當(dāng)今應(yīng)用軟件的首選體系結(jié)構(gòu)。1.3 課題意義隨著科學(xué)技術(shù)的不斷提高,計(jì)算機(jī)科學(xué)日漸成熟,其強(qiáng)大的功能已為人們深刻認(rèn)識(shí),它已進(jìn)入人類社會(huì)的各個(gè)領(lǐng)域并發(fā)揮著越來越重要的作用。它已經(jīng)深入到日常工作和生活的方方面面,比如文字處理、信息管理、輔助設(shè)計(jì)、圖形圖像處理、教育培訓(xùn)以及游戲娛樂等。各行各業(yè)的人們無須經(jīng)過特別的訓(xùn)練就能夠使用電腦完成許許多多復(fù)雜的工作。然而,雖然現(xiàn)在世界上已經(jīng)充滿了多如牛毛的各種軟件,但它們依然不能滿足用戶的各種特殊需要,人們還不得不開發(fā)適合自己特殊需求的軟件。今天,

11、計(jì)算機(jī)已經(jīng)成為我們學(xué)習(xí)和工作的得力助手;計(jì)算機(jī)的價(jià)格已經(jīng)十分低廉,性能卻有了長足的進(jìn)步。它已經(jīng)被應(yīng)用于許多領(lǐng)域,計(jì)算機(jī)之所以如此流行的原因主要有以下幾個(gè)方面:首先,計(jì)算機(jī)可以代替人工進(jìn)行許多繁雜的勞動(dòng);其次,計(jì)算機(jī)可以節(jié)省許多資源;第三,計(jì)算機(jī)可以大大的提高人們的工作效率;第四,計(jì)算機(jī)可以使敏感信息更加安全,等等。我作為一個(gè)計(jì)算機(jī)應(yīng)用的本科生,希望可以在這方面有所貢獻(xiàn)。改革的總設(shè)計(jì)師鄧小平同志說過“科學(xué)技術(shù)是第一生產(chǎn)力”,我希望能用我四年的所學(xué)編制出一個(gè)實(shí)用的程序來幫助學(xué)進(jìn)行更有效的酒店客房預(yù)定系統(tǒng)。 歸納起來,好處大約有以下幾點(diǎn):1.可以在線預(yù)定酒店客房;2.只需一名錄入員即可操作系統(tǒng),節(jié)省

12、大量人力;3.可以迅速查到所需信息。現(xiàn)在我國還有許多的酒店客房的管理水平還停留在紙介質(zhì)的基礎(chǔ)上,這樣的機(jī)制已經(jīng)不能適應(yīng)時(shí)代的發(fā)展,因?yàn)樗速M(fèi)了許多人力和物力,采用傳統(tǒng)的紙介質(zhì)的管理模式,還主要依賴于人力手工的操作,并歸檔編號(hào)保存,事后如需查閱,則要人工從浩瀚的資料中查找,既費(fèi)時(shí)費(fèi)力又容易出錯(cuò)。作為保存資料的介質(zhì)-紙張,又有容易被火燒毀,易被蟲蛀,易發(fā)霉變質(zhì)等等缺點(diǎn)。在信息時(shí)代這種傳統(tǒng)的管理方法必然被計(jì)算機(jī)為基礎(chǔ)的信息管理所取代。這就急需有一套全新的高效的管理系統(tǒng),由計(jì)算機(jī)來代替手工完成酒店客房預(yù)定的管理。2、項(xiàng)目概述2.1 課題簡要說明 隨著酒店的經(jīng)營規(guī)模不斷擴(kuò)大,有關(guān)酒店客房預(yù)定各種信息也成

13、倍增長。面對龐大的信息量,有必要開發(fā)酒店客房預(yù)定系統(tǒng)來提高管理工作的效率。今天我們使用計(jì)算機(jī)對酒店客房預(yù)定與訂購信息進(jìn)行管理,具有手工管理所無法比擬的優(yōu)點(diǎn)。通過這樣的系統(tǒng),可以做到信息的規(guī)范管理、科學(xué)統(tǒng)計(jì)和快速查詢,從而減少管理方面的工作量,有效地提高進(jìn)銷存的工作效率。2.2 可行性研究該階段通過對系統(tǒng)目標(biāo)的初步調(diào)研和分析,提出可行性方案并進(jìn)行論證。我們在這里主要從技術(shù)可行性、經(jīng)濟(jì)可行性和操作可行性等方面進(jìn)行分析。2.2.1 經(jīng)濟(jì)可行性開發(fā)該系統(tǒng)所需的相關(guān)資料可以通過已存在的相關(guān)系統(tǒng)進(jìn)行調(diào)查采集,所需的其他應(yīng)用軟件、硬件系統(tǒng)也易于獲得.因此,開發(fā)成本較低。而引進(jìn)使用本系統(tǒng)后,與傳統(tǒng)方式相比,具

14、有高效率、低成本、高質(zhì)量的特點(diǎn),可以節(jié)省不少人力、物力及財(cái)力。所以,從經(jīng)濟(jì)的角度來看,該系統(tǒng)可行。2.2.2 技術(shù)可行性技術(shù)可行性要考慮現(xiàn)有的技術(shù)條件是否能夠順利完成開發(fā)工作,軟硬件配置是否滿足開發(fā)的需求等。本網(wǎng)站用的是JSP開發(fā)語言,調(diào)試相對簡單,當(dāng)前的計(jì)算機(jī)硬件配置也完全能滿足開發(fā)的需求,因此在技術(shù)上是絕對可行的。軟件方面:由于目前單機(jī)模式相對發(fā)展成熟,故軟件的開發(fā)平臺(tái)成熟可行,它們速度快、容量大、可靠性能高、價(jià)格低,完全能滿足系統(tǒng)的需求。2.2.3運(yùn)行可行性運(yùn)行可行性是對組織結(jié)構(gòu)的影響,現(xiàn)有人員和機(jī)構(gòu)和環(huán)境對系統(tǒng)的適應(yīng)性及人員培訓(xùn)補(bǔ)充計(jì)劃的可行性。當(dāng)前信息化技術(shù)已經(jīng)相當(dāng)普及,各類操作人員

15、水平都有相當(dāng)?shù)母叨?,所以在運(yùn)行上是可行性的。本系統(tǒng)的開發(fā),是典型的Mis開發(fā),主要是對數(shù)據(jù)的處理,包括數(shù)據(jù)的收集,數(shù)據(jù)的變換,及數(shù)據(jù)的各種報(bào)表形式的輸出。采用流行的JSP+SQLSERVER 2000體系,已無技術(shù)上的問題。2.2.4 時(shí)間可行性從時(shí)間上看,在兩個(gè)月的時(shí)間里學(xué)習(xí)相關(guān)知識(shí),并開發(fā)網(wǎng)站,時(shí)間上是有點(diǎn)緊,但是不是不可能實(shí)現(xiàn),通過兩個(gè)多月的努力功能基本實(shí)現(xiàn)。2.2.5 法律可行性: 所有技術(shù)資料都為合法。 開發(fā)過程中不存在知識(shí)產(chǎn)權(quán)問題。 未抄襲任何網(wǎng)站,不存在侵犯版權(quán)問題。 開發(fā)過程中未涉及任何法律責(zé)任。綜上所述,本系統(tǒng)的開發(fā)從技術(shù)上、從經(jīng)濟(jì)上、從法律上都是完全可靠的。3、需求分析3.

16、1 功能需求(1)客房管理;(2)客房分類管理;(3)留言管理;(4)客房預(yù)定管理;(5)用戶管理;3.2 性能需求系統(tǒng)對環(huán)境的要求服務(wù)起端的最低配置是由建立站點(diǎn)所需要的軟件來決定的,在最底配置的情況下,服務(wù)器的性能往往不進(jìn)人意,現(xiàn)在硬件性能已經(jīng)相當(dāng)出色,而且價(jià)格也很便宜,因此通常應(yīng)給服務(wù)器端配置高性能硬件。本機(jī)器的配置如下:處理器:Inter Pentium 41.6Hz或更高。內(nèi)存:256MB硬件空間:40GB題目主要采用的技術(shù)數(shù)據(jù)庫:Microsoft SQL Server 2000。編程語言:jsp,java。服務(wù)器:Tomcat5.5,jdk1.5開發(fā)環(huán)境:WindowsXP4、相關(guān)

17、技術(shù)介紹4.1 JSP技術(shù)簡介JSP(Java Server Page服務(wù)器網(wǎng)頁)是從1998年開始出現(xiàn)的新技術(shù)。由Sun公司倡導(dǎo)、許多公司參與一起建立的一種動(dòng)態(tài)網(wǎng)頁技術(shù)標(biāo)準(zhǔn),是基于JavaServlet以及整個(gè)Java體系的web開發(fā)技術(shù)。在傳統(tǒng)的網(wǎng)頁HTML文件(*.htm,*.html)中加入腳本片段和JSP標(biāo)記(Tag),構(gòu)成JSP網(wǎng)頁(*.jsp)。JSP技術(shù)為創(chuàng)建顯示動(dòng)態(tài)生成內(nèi)容的web頁面提供了簡便的方法。JSP作為Java家族的一員,承襲了Java的特點(diǎn),即跨平臺(tái)的特性,也即一次編譯,到處運(yùn)行。在國外,己經(jīng)大量使用JSP作為網(wǎng)絡(luò)應(yīng)用程序的開發(fā)工具,而在國內(nèi),盡管JSP還不是主流

18、開發(fā)技術(shù),但是由于JSP的強(qiáng)大優(yōu)勢,許多網(wǎng)站都已經(jīng)準(zhǔn)備轉(zhuǎn)向JSP,利用JSP來開發(fā)動(dòng)態(tài)網(wǎng)站。 4.2 JSP工作原理JSP是面向服務(wù)器的,因此支持任何瀏覽器。當(dāng)Web服務(wù)器和JSP引擎遇到訪問JSP網(wǎng)頁的請求時(shí),JSP引擎將請求對象發(fā)送給服務(wù)器端的相關(guān)組件,比如JavaBean組件、Servlet或EJB等,然后由服務(wù)器端組件處理這些請示,可能需要從數(shù)據(jù)庫或數(shù)據(jù)存儲(chǔ)中檢索信息,然后服務(wù)器端組件再將響應(yīng)對象返回JSP引擎。JSP引擎將響應(yīng)對象傳遞給JSP頁面,根據(jù)JSP頁面的HTML格式完成數(shù)據(jù)編排,最后Web服務(wù)器和JSP引擎將格式化后的JSP頁面以HTML格式返回客戶瀏覽器。這就是當(dāng)前網(wǎng)站構(gòu)

19、建中廣泛采用的瀏覽器Web服務(wù)器后臺(tái)數(shù)據(jù)庫的三層架構(gòu)模式。因?yàn)镴SP所有程序操作都在服務(wù)器端執(zhí)行,網(wǎng)絡(luò)上傳送給客戶端的僅是得到的結(jié)果。4.3 JSP體系結(jié)構(gòu)JSP網(wǎng)站開發(fā)標(biāo)準(zhǔn)給出了兩種使用JSP的技術(shù),可以歸納為模式一、模式二。模式一:JSP+JavaBeans技術(shù)在這種模式中,JSP頁面獨(dú)自響應(yīng)請求并將處理結(jié)果返回給客戶。Bean處理所有數(shù)據(jù)訪問,JSP實(shí)現(xiàn)頁面的表現(xiàn),以實(shí)現(xiàn)內(nèi)容生成與顯示相分離。當(dāng)處理復(fù)雜的大型應(yīng)用時(shí),頁面被嵌入大量的腳本或Java代碼段,當(dāng)需要處理的商業(yè)邏輯復(fù)雜時(shí),這種情況會(huì)變得非常糟糕,大量的內(nèi)嵌代碼使得頁面程序變得復(fù)雜,對于前端界面設(shè)計(jì)人員,這是不可思議的事情。所以模

20、式一可用于小型應(yīng)用,不能夠滿足大型應(yīng)用的需要。模式二:JSP+Servlet+JavaBeans技術(shù)Servlet技術(shù)是一種采用Java技術(shù)來實(shí)現(xiàn)CGI功能的一種技術(shù),Servlet技術(shù)非常適于服務(wù)器端的處理和編程,并且Servlet會(huì)長期駐留在內(nèi)存。從開發(fā)的觀點(diǎn)看,模式二具有更清晰的頁面表現(xiàn),清楚的開發(fā)者角色劃分,在大規(guī)模項(xiàng)目開發(fā)中,模式二更被采用,模式二也更符合當(dāng)前流行的MVC結(jié)構(gòu)(Model/view/controller),其中Servlet對應(yīng)controller,處于控制者的位置,處理HTTP請求,負(fù)責(zé)生成JSP中使用的Beans組件或?qū)ο?,并判斷?yīng)將請求傳遞給哪個(gè)JSP等,JSP

21、對應(yīng)view,負(fù)責(zé)生成最終的動(dòng)態(tài)網(wǎng)頁并返回給瀏覽器。而JavaBeans對應(yīng)的是Model,實(shí)現(xiàn)各個(gè)具體的應(yīng)用邏輯與功能。4.4 JSP的特點(diǎn)1. 簡化的頁面生成技術(shù)。JSP頁面用標(biāo)準(zhǔn)的HTML或XML命令來處理頁面的格式化和布局設(shè)計(jì),而用類似HTML、XML的標(biāo)記和Java語言編寫的腳本程序生成頁面內(nèi)容。這使得頁面形式與頁面內(nèi)容互相獨(dú)立,非常有利于大型項(xiàng)目的分工合作。2. 與Java平臺(tái)有機(jī)集成。JSP技術(shù)是Java 2平臺(tái)的重要組成部分,JSP使用Java語言作為它的腳本語言。在JSP頁面中可以使用幾乎所有的Java組件和Java API,這就能充分發(fā)揮出Java語言的強(qiáng)大功能。使用JSP

22、技術(shù)可以創(chuàng)建具有高度可伸縮性和可靠性的Web應(yīng)用程序。3. 硬件平臺(tái)和服務(wù)器無關(guān)性。JSP作為Java家族的一員,秉承了Java技術(shù)的“一次編寫,隨處可用(Write Once,Rum Anywhere)”的特性,可以運(yùn)行于大多數(shù)流行的操作系統(tǒng)平臺(tái)及Web服務(wù)器,這種與服務(wù)器硬件和操作系統(tǒng)平臺(tái)的無關(guān)性是JSP相對于其它動(dòng)態(tài)網(wǎng)頁技術(shù)最大的一個(gè)優(yōu)點(diǎn)。4. 功能可擴(kuò)展性。如同Microsoft的JSP技術(shù)可以通過ActiveX/COM組件來擴(kuò)展功能一樣,JSP可以通過JavaBean和EJB(Enterprise JavaBean)以及自定義的標(biāo)記來擴(kuò)展功能。JSP可以通過JDBC,與諸如Oracl

23、e、SQL Server這樣的大型關(guān)系數(shù)據(jù)庫進(jìn)行連接。JSP提供了一些隱含對象。這些隱含對象在JSP頁面中可以直接引用,而不必首先聲明。利用JSP提供的這些隱含對象,可以使腳本功能更加強(qiáng)大,并且編程更加容易、方便。例如,利用request對象,可以很容易地接收用戶在HTML表單中提交的信息。4.5 SQLSERVER 2000 數(shù)據(jù)庫SQL Server是由Microsoft開發(fā)和推廣的關(guān)系數(shù)據(jù)庫管理系統(tǒng)(DBMS),它最初是由Microsoft、Sybase和Ashton-Tate三家公司共同開發(fā)的,并于1988年推出了第一個(gè)OS/2版本。 SQL Server近年來不斷更新版本,1996年

24、,Microsoft 推出了SQL Server 6.5版本;1998年,SQL Server 7.0版本和用戶見面;SQL Server 2000是Microsoft公司于2000年推出的最新版本。 SQL Server 特點(diǎn):1真正的客戶機(jī)/服務(wù)器體系結(jié)構(gòu)。 2圖形化用戶界面,使系統(tǒng)管理和數(shù)據(jù)庫管理更加直觀、簡單。 3豐富的編程接口工具,為用戶進(jìn)行程序設(shè)計(jì)提供了更大的選擇余地。 4SQL Server與Windows NT完全集成,利用了NT的許多功能,如發(fā)送和接受消息,管理登錄安全性等。SQL Server也可以很好地與Microsoft BackOffice產(chǎn)品集成。 5具有很好的伸縮

25、性,可跨越從運(yùn)行Windows 95/98的膝上型電腦到運(yùn)行Windows 2000的大型多處理器等多種平臺(tái)使用。 6對Web技術(shù)的支持,使用戶能夠很容易地將數(shù)據(jù)庫中的數(shù)據(jù)發(fā)布到Web頁面上。 7SQL Server提供數(shù)據(jù)倉庫功能,這個(gè)功能只在Oracle和其他更昂貴的DBMS中才有。4.6 JDBC介紹JDBC(Java Data Base Connectivity,java數(shù)據(jù)庫連接)是一種用于執(zhí)行SQL語句的Java API,可以為多種關(guān)系數(shù)據(jù)庫提供統(tǒng)一訪問,它由一組用Java語言編寫的類和接口組成。JDBC為工具/數(shù)據(jù)庫開發(fā)人員提供了一個(gè)標(biāo)準(zhǔn)的API,據(jù)此可以構(gòu)建更高級的工具和接口,

26、使數(shù)據(jù)庫開發(fā)人員能夠用純 Java API 編寫數(shù)據(jù)庫應(yīng)用程序,同時(shí),JDBC也是個(gè)商標(biāo)名。 有了JDBC,向各種關(guān)系數(shù)據(jù)發(fā)送SQL語句就是一件很容易的事。換言之,有了JDBC API,就不必為訪問Sybase數(shù)據(jù)庫專門寫一個(gè)程序,為訪問Oracle數(shù)據(jù)庫又專門寫一個(gè)程序,或?yàn)樵L問Informix數(shù)據(jù)庫又編寫另一個(gè)程序等等,程序員只需用JDBC API寫一個(gè)程序就夠了,它可向相應(yīng)數(shù)據(jù)庫發(fā)送SQL調(diào)用。同時(shí),將Java語言和JDBC結(jié)合起來使程序員不必為不同的平臺(tái)編寫不同的應(yīng)用程序,只須寫一遍程序就可以讓它在任何平臺(tái)上運(yùn)行,這也是Java語言“編寫一次,處處運(yùn)行”的優(yōu)勢。Java數(shù)據(jù)庫連接體系結(jié)

27、構(gòu)是用于Java應(yīng)用程序連接數(shù)據(jù)庫的標(biāo)準(zhǔn)方法。JDBC對Java程序員而言是API,對實(shí)現(xiàn)與數(shù)據(jù)庫連接的服務(wù)提供商而言是接口模型。作為API,JDBC為程序開發(fā)提供標(biāo)準(zhǔn)的接口,并為數(shù)據(jù)庫廠商及第三方中間件廠商實(shí)現(xiàn)與數(shù)據(jù)庫的連接提供了標(biāo)準(zhǔn)方法。JDBC使用已有的SQL標(biāo)準(zhǔn)并支持與其它數(shù)據(jù)庫連接標(biāo)準(zhǔn),如ODBC之間的橋接。JDBC實(shí)現(xiàn)了所有這些面向標(biāo)準(zhǔn)的目標(biāo)并且具有簡單、嚴(yán)格類型定義且高性能實(shí)現(xiàn)的接口。Java 具有堅(jiān)固、安全、易于使用、易于理解和可從網(wǎng)絡(luò)上自動(dòng)下載等特性,是編寫數(shù)據(jù)庫應(yīng)用程序的杰出語言。所需要的只是 Java應(yīng)用程序與各種不同數(shù)據(jù)庫之間進(jìn)行對話的方法。而 JDBC 正是作為此種用

28、途的機(jī)制。 JDBC 擴(kuò)展了 Java 的功能。例如,用 Java 和 JDBC API 可以發(fā)布含有 applet 的網(wǎng)頁,而該 applet 使用的信息可能來自遠(yuǎn)程數(shù)據(jù)庫企業(yè)也可以用 JDBC 通過 Intranet 將所有職員連到一個(gè)或多個(gè)內(nèi)部數(shù)據(jù)庫中(即使這些職員所用的計(jì)算機(jī)有 Windows、 Macintosh 和UNIX 等各種不同的操作系統(tǒng))。隨著越來越多的程序員開始使用Java 編程語言,對從 Java 中便捷地訪問數(shù)據(jù)庫的要求也在日益增加。 MIS 管理員們都喜歡 Java 和 JDBC 的結(jié)合,因?yàn)樗剐畔鞑プ兊萌菀缀徒?jīng)濟(jì)。企業(yè)可繼續(xù)使用它們安裝好的數(shù)據(jù)庫,并能便捷地存

29、取信息,即使這些信息是儲(chǔ)存在不同數(shù)據(jù)庫管理系統(tǒng)上。新程序的開發(fā)期很短。安裝和版本控制將大為簡化。程序員可只編寫一遍應(yīng)用程序或只更新一次,然后將它放到服務(wù)器上,隨后任何人就都可得到最新版本的應(yīng)用程序。對于商務(wù)上的銷售信息服務(wù), Java 和JDBC 可為外部客戶提供獲取信息更新的更好方法。簡單地說,JDBC 可做三件事:與數(shù)據(jù)庫建立連接、發(fā)送 SQL 語句并處理結(jié)果。下列代碼段給出了以上三步的基本示例: Connection con = DriverManager.getConnection(jdbc:odbc:wombat,login, password); Statement stmt =

30、con.createStatement(); ResultSet rs = stmt.executeQuery(SELECT a, b, c FROM Table1); while (rs.next() int x = rs.getInt(a); String s = rs.getString(b); float f = rs.getFloat(c); 上述代碼對基于JDBC的數(shù)據(jù)庫訪問做了經(jīng)典的總結(jié)。4.7 系統(tǒng)數(shù)據(jù)庫連接JDBC技術(shù)是Java DataBase Connectivity的縮寫,它是SUN公司提供的一種支持基本SQL功能的通用的應(yīng)用程序接口(Application Progr

31、amming Interface)。它由一組用Java語言編寫的類和接口組成。通過這些類和接口,程序開發(fā)人員可以在Java語言中方便地建立與數(shù)據(jù)庫的鏈接,通過執(zhí)行相應(yīng)SQL語句,完成對不同數(shù)據(jù)庫的訪問。因此,開發(fā)人員使用JDBC API可以不必編寫一個(gè)應(yīng)用程序來訪問Sybase數(shù)據(jù)庫,又另外編寫一個(gè)應(yīng)用程序去訪問Oracle數(shù)據(jù)庫,再寫一個(gè)應(yīng)用程序訪問Microsoft的SQL Server。不但如此,使用Java語言編寫的應(yīng)用程序可以在任何支持Java的平臺(tái)上運(yùn)行,不必在不同的平臺(tái)上開發(fā)不同的應(yīng)用程序。簡單地說,JDBC能完成下列三件事:1. 同一個(gè)數(shù)據(jù)庫建立連接;2. 向數(shù)據(jù)庫建立連接;3

32、. 處理數(shù)據(jù)庫返回的結(jié)果。JDBC是一種通用低層的應(yīng)用程序編程接口,它在不同的數(shù)據(jù)庫功能模塊的層次上提供一個(gè)統(tǒng)一的用戶界面。說JDBC是一處低級的API,是指它直接調(diào)用SQL命令,它比其他的一些數(shù)據(jù)庫連接API要容易使用些,但它有同樣可以作為更高級的,用戶辦面更友好的API或開發(fā)工具基礎(chǔ)。很多可視化的Java開發(fā)工具,如Visual Age For Java、Visual Caf、J+等都提供了基于JDBC的更面向用戶的類和包,直接將關(guān)系數(shù)據(jù)庫的表或視圖映射為Java類,程序員通過可視化工具直接對Java對象進(jìn)行操作,而真正需要的SQL調(diào)用則根據(jù)程序員發(fā)出的對對象的各種屬性、方法的操作來自動(dòng)產(chǎn)

33、生。另一種使用JDBC API 的方式為,用戶程序可以提供一個(gè)界面(如菜單等)讓用戶選擇對數(shù)據(jù)庫進(jìn)行的操作,選中一個(gè)任務(wù)后,提示用戶輸入一些必要的信息,然后根據(jù)用戶的輸入產(chǎn)生相應(yīng)的SQL命令以及Java程序。通過這處方式,用戶可以完成對數(shù)據(jù)庫的操作,即使他并不了解SQL語法以及JDBC編程。數(shù)據(jù)庫訪問的三層結(jié)構(gòu)如圖5.1所示,瀏覽器端程序要訪問數(shù)據(jù)庫,首先通過中間件,然后由中間件對數(shù)據(jù)庫操作權(quán)限進(jìn)行認(rèn)證,認(rèn)證通過才能對數(shù)據(jù)庫進(jìn)行操作。圖5.1 使用中間件的數(shù)據(jù)庫訪問三層結(jié)構(gòu)用戶對數(shù)據(jù)庫的存取權(quán)限認(rèn)證是中間件中完成,對數(shù)據(jù)庫的查詢、插入、更新和刪除操作等都封裝在中間件中,該中間件位于服務(wù)器端,中

34、間件對數(shù)據(jù)庫進(jìn)行操作后,再將處理結(jié)果通過Web服務(wù)器返回到瀏覽器端用戶。這樣,在用戶端輸入的用戶名和密碼,可以通過加密算法進(jìn)行加密后在網(wǎng)絡(luò)上傳輸,在中間件中進(jìn)行解密認(rèn)證,然后再進(jìn)行數(shù)據(jù)庫的存取操作,數(shù)據(jù)庫存取權(quán)限的用戶名和密碼出現(xiàn)在位于服務(wù)器端的中間件中,這樣就更加安全。本系統(tǒng)采用的正是這樣的三層結(jié)構(gòu)的數(shù)據(jù)庫訪問模式。在三層模型中,命令將被發(fā)送到服務(wù)的”中間層”,而”中間層”將SQL語句發(fā)送到數(shù)據(jù)庫。數(shù)據(jù)庫處理SQL語句并將結(jié)果返回”中間層”,然后”中間層”將它們返回用戶。其模型如圖5.2所示。圖5.2 JDBC的三層模型因?yàn)椤敝虚g層”可以進(jìn)行對訪問的控制并協(xié)同數(shù)據(jù)庫的更新,并且可以使用一個(gè)易

35、用的高層API,這個(gè)API可以由“中間層”進(jìn)行轉(zhuǎn)換,轉(zhuǎn)換成低層的調(diào)用。所以在許多種情況下,三層模型可以提供更好的性能,本系統(tǒng)中所采用的就是此種模型。JDBC是JAVA應(yīng)用程序與數(shù)據(jù)庫的溝通橋梁。它提供了三項(xiàng)服務(wù)功能:一、與數(shù)據(jù)庫建立連接。二、將SQL語句傳遞給數(shù)據(jù)庫。三、從數(shù)據(jù)庫取得SQL語句的執(zhí)行結(jié)果。當(dāng)JDBC要與數(shù)據(jù)庫建立連接前,首先,它必須先取得連接此數(shù)據(jù)庫的JDBC驅(qū)動(dòng)程序,Class.forName()即是在執(zhí)行此項(xiàng)工作。建立數(shù)據(jù)庫連接的第一步驟就是將JDBC驅(qū)動(dòng)程序的類載入至JVM(Java VirtualL Machine)中,本系統(tǒng)中利用java.lang.Class類內(nèi)的f

36、orName()靜態(tài)函數(shù)依據(jù)指定的類名稱,將JDBC驅(qū)動(dòng)程序載入進(jìn)來。完成載入驅(qū)動(dòng)程序的步驟后,必須使用java.sal.DriverManager類所提供的getConnection()靜態(tài)函數(shù),取得與數(shù)據(jù)庫間的連接對象。此連接對象的類類型為java.sal.Connection,必須通過它才能將SQL指令傳遞給數(shù)據(jù)庫,而執(zhí)行結(jié)果也需要通過連接對象來取得。當(dāng)取得連接對象后,還必須取得Statement對象才能對數(shù)據(jù)庫執(zhí)行SQL指令。Statement主要實(shí)現(xiàn)兩個(gè)功能:執(zhí)行SQL語句以及取得執(zhí)行結(jié)果。在java.sql.Statement的sql對象中執(zhí)行查詢或修改命令的函數(shù)后傳回的是一個(gè)Re

37、sultSet 對象,這個(gè)對象提供了一個(gè)存取SQL執(zhí)行結(jié)果的管道,以便通過它將表格數(shù)據(jù)從數(shù)據(jù)庫中取出。每個(gè)Statement對象只能產(chǎn)生一個(gè)ResultSet 對象。數(shù)據(jù)庫連接如圖5.3所示:圖5.3 數(shù)據(jù)庫的連接處理數(shù)據(jù)庫的連接處理具體實(shí)現(xiàn)如下:/建立JDBCODBC橋sun.jdbc.odbc.JdbcOdbcDriver;/橋建立不成功時(shí)的錯(cuò)誤處理catch(ClassNotFoundException event)/建立與數(shù)據(jù)庫的連接,并發(fā)送SQL查詢語句,將結(jié)果保存到rs對象中Con=建立JDBCODBC橋Sql=SQL查詢語句執(zhí)行查詢Rs=返回結(jié)果/SQL出錯(cuò)處理 catch(SQ

38、LException e1)4.8 BS模式與C/S模式的比較分析C/S模式主要由客戶應(yīng)用程序(Client)、服務(wù)器管理程序(Server)和中間件(middleware)三個(gè)部件組成??蛻魬?yīng)用程序是系統(tǒng)中用戶與數(shù)據(jù)進(jìn)行交互的部件。服務(wù)器程序負(fù)責(zé)有效地管理系統(tǒng)資源,如管理一個(gè)信息數(shù)據(jù)庫,其主要工作是當(dāng)多個(gè)客戶并發(fā)地請求服務(wù)器上的相同資源時(shí),對這些資源進(jìn)行最優(yōu)化管理。中間件負(fù)責(zé)聯(lián)結(jié)客戶應(yīng)用程序與服務(wù)器管理程序,協(xié)同完成一個(gè)作業(yè),以滿足用戶查詢管理數(shù)據(jù)的要求。 B/S模式是一種以Web技術(shù)為基礎(chǔ)的新型的MIS系統(tǒng)平臺(tái)模式。把傳統(tǒng)C/S模式中的服務(wù)器部分分解為一個(gè)數(shù)據(jù)服務(wù)器與一個(gè)或多個(gè)應(yīng)用服務(wù)器(

39、Web服務(wù)器),從而構(gòu)成一個(gè)三層結(jié)構(gòu)的客戶服務(wù)器體系。 第一層客戶機(jī)是用戶與整個(gè)系統(tǒng)的接口??蛻舻膽?yīng)用程序精簡到一個(gè)通用的瀏覽器軟件,如NetscapeNavigator,微軟公司的IE等。瀏覽器將HTML代碼轉(zhuǎn)化成圖文并茂的網(wǎng)頁。網(wǎng)頁還具備一定的交互功能,允許用戶在網(wǎng)頁提供的申請表上輸入信息提交給后臺(tái),并提出處理請求。這個(gè)后臺(tái)就是第二層的Web服務(wù)器。 第二層Web服務(wù)器將啟動(dòng)相應(yīng)的進(jìn)程來響應(yīng)這一請求,并動(dòng)態(tài)生成一串HTML代碼,其中嵌入處理的結(jié)果,返回給客戶機(jī)的瀏覽器。如果客戶機(jī)提交的請求包括數(shù)據(jù)的存取,Web服務(wù)器還需與數(shù)據(jù)庫服務(wù)器協(xié)同完成這一處理工作。 第三層數(shù)據(jù)庫服務(wù)器的任務(wù)類似于C

40、/S模式,負(fù)責(zé)協(xié)調(diào)不同的Web服務(wù)器發(fā)出的SQ請求,管理數(shù)據(jù)庫。 B/S模式的優(yōu)勢 首先它簡化了客戶端。它無需象C/S模式那樣在不同的客戶機(jī)上安裝不同的客戶應(yīng)用程序,而只需安裝通用的瀏覽器軟件。這樣不但可以節(jié)省客戶機(jī)的硬盤空間與內(nèi)存,而且使安裝過程更加簡便、網(wǎng)絡(luò)結(jié)構(gòu)更加靈活。假設(shè)一個(gè)企業(yè)的決策層要開一個(gè)討論庫存問題的會(huì)議,他們只需從會(huì)議室的計(jì)算機(jī)上直接通過瀏覽器查詢數(shù)據(jù),然后顯示給大家看就可以了。甚至與會(huì)者還可以把筆記本電腦聯(lián)上會(huì)議室的網(wǎng)絡(luò)插口,自己來查詢相關(guān)的數(shù)據(jù)。其次,它簡化了系統(tǒng)的開發(fā)和維護(hù)。系統(tǒng)的開發(fā)者無須再為不同級別的用戶設(shè)計(jì)開發(fā)不同的客戶應(yīng)用程序了,只需把所有的功能都實(shí)現(xiàn)在Web服

41、務(wù)器上,并就不同的功能為各個(gè)組別的用戶設(shè)置權(quán)限就可以了。各個(gè)用戶通過HTTP請求在權(quán)限范圍內(nèi)調(diào)用Web服務(wù)器上不同處理程序,從而完成對數(shù)據(jù)的查詢或修改。現(xiàn)代企業(yè)面臨著日新月異的競爭環(huán)境,對企業(yè)內(nèi)部運(yùn)作機(jī)制的更新與調(diào)整也變得逐漸頻繁。相對于C/S,B/S的維護(hù)具有更大的靈活性。當(dāng)形勢變化時(shí),它無須再為每一個(gè)現(xiàn)有的客戶應(yīng)用程序升級,而只需對Web服務(wù)器上的服務(wù)處理程序進(jìn)行修訂。這樣不但可以提高公司的運(yùn)作效率,還省去了維護(hù)時(shí)協(xié)調(diào)工作的不少麻煩。如果一個(gè)公司有上千臺(tái)客戶機(jī),并且分布在不同的地點(diǎn),那么便于維護(hù)將會(huì)顯得更加重要。 再次,它使用戶的操作變得更簡單。對于C/S模式,客戶應(yīng)用程序有自己特定的規(guī)格

42、,使用者需要接受專門培訓(xùn)。而采用B/S模式時(shí),客戶端只是一個(gè)簡單易用的瀏覽器軟件。無論是決策層還是操作層的人員都無需培訓(xùn),就可以直接使用。B/S模式的這種特性,還使MIS系統(tǒng)維護(hù)的限制因素更少。 最后,B/S特別適用于網(wǎng)上信息發(fā)布,使得傳統(tǒng)的MIS的功能有所擴(kuò)展。這是C/S所無法實(shí)現(xiàn)的。而這種新增的網(wǎng)上信息發(fā)布功能恰是現(xiàn)代企業(yè)所需的。這使得企業(yè)的大部分書面文件可以被電子文件取代,從而提高了企業(yè)的工作效率,使企業(yè)行政手續(xù)簡化,節(jié)省人力物力。 鑒于B/S相對于C/S的先進(jìn)性,B/S逐漸成為一種流行的MIS系統(tǒng)平臺(tái)。各軟件公司紛紛推出自己的Internet方案,基于Web的財(cái)務(wù)系統(tǒng)、基于Web的ER

43、P。一些企業(yè)已經(jīng)領(lǐng)先一步開始使用它,并且收到了一定的成效。 B/S模式的新穎與流行,和在某些方面相對于C/S的巨大改進(jìn),使B/S成了MIS系統(tǒng)平臺(tái)的首選。5、系統(tǒng)分析5.1 系統(tǒng)功能分析(1) 系統(tǒng)界面采用Web方式,界面應(yīng)簡潔明了,用戶可方便瀏覽和查找客房信息。該系統(tǒng)的用戶有兩種類型:一是管理員,二是服務(wù)員,兩者應(yīng)具有不同的權(quán)限。(2) 系統(tǒng)需對用戶登錄進(jìn)行管理。使用各功能模塊時(shí),系統(tǒng)應(yīng)驗(yàn)證用戶身份的有效性,否則要求用戶登錄。另外,允許用戶對自己的密碼進(jìn)行修改。(3) 系統(tǒng)應(yīng)提供客房的分類管理功能,可分類制訂價(jià)格、是否配備空調(diào)等客房類型,對不同標(biāo)準(zhǔn)的客房進(jìn)行有效管理。系統(tǒng)可實(shí)現(xiàn)對客房信息的添

44、加、刪除以及修改。 (4) 在進(jìn)行訂房管理時(shí),系統(tǒng)可以根據(jù)客房當(dāng)前的狀態(tài)自動(dòng)提示可用服務(wù)訂房。(5) 系統(tǒng)在各功能模塊的實(shí)現(xiàn)當(dāng)中,提供多級分類檢索和組合搜索。(6) 系統(tǒng)的客戶端在Windows平臺(tái)下運(yùn)行,服務(wù)器端可在Windows平臺(tái)或UNIX平臺(tái)下運(yùn)行。系統(tǒng)還需要有較好的安全性和可擴(kuò)展性。5.2 功能模塊圖酒店客房預(yù)定系統(tǒng)客房預(yù)定客房搜索信息查詢留言管理會(huì)員管理客房類別管理客房管理用戶留言查看預(yù)定記錄用戶管理員剩余房間查詢訂房信息查詢預(yù)定信息查詢5.3 處理流程設(shè)計(jì)5.3.1 數(shù)據(jù)增加流程添加信息時(shí),編號(hào)字段由系統(tǒng)自動(dòng)生成,且不能修改,其他信息由用戶輸入,之后對數(shù)據(jù)進(jìn)行合法判斷,合法則寫入

45、保存至數(shù)據(jù)庫,不合法則重新輸入數(shù)據(jù)。數(shù)據(jù)增加流程圖:開始自動(dòng)生成編號(hào)輸入數(shù)據(jù)是否合法寫入數(shù)據(jù)庫結(jié)束圖3.2 數(shù)據(jù)增加流程圖5.3.2 數(shù)據(jù)修改流程在修改信息時(shí),先選中一條待修改的記錄,然后直接輸入數(shù)據(jù),判斷合法性,合法則保存至數(shù)據(jù)庫,不合法重新輸入。數(shù)據(jù)修改流程圖如圖3.3所示。開始選擇需要修改記錄輸入數(shù)據(jù)是否合法寫入數(shù)據(jù)庫結(jié)束圖3.3 數(shù)據(jù)修改流程圖5.3.3 數(shù)據(jù)刪除流程當(dāng)用戶選定一條記錄時(shí),單擊刪除按鈕,會(huì)提示用戶是否確定刪除,然后刪除數(shù)據(jù)庫相關(guān)內(nèi)容。數(shù)據(jù)刪除流程圖如圖3.4所示。開始選擇需要?jiǎng)h除記錄是否刪除更新數(shù)據(jù)庫圖3.4 數(shù)據(jù)刪除流程圖6、系統(tǒng)設(shè)計(jì)6.1 前臺(tái)模塊設(shè)計(jì)6.1.1 首

46、頁6.1.2 用戶注冊6.1.3 用戶登陸6.1.4 客房搜索6.1.5 客房預(yù)訂6.1.6 用戶留言6.2 后臺(tái)模塊設(shè)計(jì)6.2.1 管理員登陸6.2.2 客房管理6.2.3 客房類別管理6.2.4 留言管理6.2.5 預(yù)定信息管理6.2.6 剩余客房查詢6.2.7 管理員管理6、系統(tǒng)調(diào)試與測試6.1 程序調(diào)試在設(shè)計(jì)系統(tǒng)的過程中,存在一些錯(cuò)誤是必然的。對于語句的語法錯(cuò)誤,在程序運(yùn)行時(shí)自動(dòng)提示,并請求立即糾正,因此,這類錯(cuò)誤比較容易發(fā)現(xiàn)和糾正。但另一類錯(cuò)誤是在程序執(zhí)行時(shí)由于不正確的操作或?qū)δ承?shù)據(jù)的計(jì)算公式的邏輯錯(cuò)誤導(dǎo)致的錯(cuò)誤結(jié)果。這類錯(cuò)誤隱蔽性強(qiáng),有時(shí)會(huì)出現(xiàn),有時(shí)又不出現(xiàn),因此,對這一類動(dòng)態(tài)發(fā)

47、生的錯(cuò)誤的排查是耗時(shí)費(fèi)力的。6.2 程序的測試6.2.1 測試的重要性及目的(1)測試的重要性軟件的測試在軟件生命周期中占據(jù)重要的地位,在傳統(tǒng)的瀑布模型中,軟件測試學(xué)僅處于運(yùn)行維護(hù)階段之前,是軟件產(chǎn)品交付用戶使用之前保證軟件質(zhì)量的重要手段。近來,軟件工程界趨向于一種新的觀點(diǎn),即認(rèn)為軟件生命周期每一階段中都應(yīng)包含測試,從而檢驗(yàn)本階段的成果是否接近預(yù)期的目標(biāo),盡可能早的發(fā)現(xiàn)錯(cuò)誤并加以修正,如果不在早期階段進(jìn)行測試,錯(cuò)誤的延時(shí)擴(kuò)散常常會(huì)導(dǎo)致最后成品測試的巨大困難。 事實(shí)上,對于軟件來講,不論采用什么技術(shù)和什么方法,軟件中仍然會(huì)有錯(cuò)。采用新的語言、先進(jìn)的開發(fā)方式、完善的開發(fā)過程,可以減少錯(cuò)誤的引入,但

48、是不可能完全杜絕軟件中的錯(cuò)誤,這些引入的錯(cuò)誤需要測試來找出,軟件中的錯(cuò)誤密度也需要測試來進(jìn)行估計(jì)。測試是所有工程學(xué)科的基本組成單元,是軟件開發(fā)的重要部分。自有程序設(shè)計(jì)的那天起測試就一直伴隨著。統(tǒng)計(jì)表明,在典型的軟件開發(fā)項(xiàng)目中,軟件測試工作量往往占軟件開發(fā)總工作量的40以上。而在軟件開發(fā)的總成本中,用在測試上的開銷要占30到50。如果把維護(hù)階段也考慮在內(nèi),討論整個(gè)軟件生存期時(shí),測試的成本比例也許會(huì)有所降低,但實(shí)際上維護(hù)工作相當(dāng)于二次開發(fā),乃至多次開發(fā),其中必定還包含有許多測試工作。 在實(shí)踐中,軟件測試的困難常常使人望而卻步或敷衍了事,這是由于對測試仍然存在一些不正確的看法和錯(cuò)誤的態(tài)度,這包括:

49、認(rèn)為測試工作不如設(shè)計(jì)和編碼那樣容易取得進(jìn)展難以給測試人員某種成就感; 以發(fā)現(xiàn)軟件錯(cuò)誤為目標(biāo)的測試是非建設(shè)性的,甚至是破壞性的,測試中發(fā)現(xiàn)錯(cuò)位是對責(zé)任者工作的一種否定; 測試工作枯燥無味,不能引起人們的興趣; 測試工作是艱苦而細(xì)致的工作; 對自己編寫的程序盲目自信,在發(fā)現(xiàn)錯(cuò)誤后,顧慮別人對自己的開發(fā)能力的看法。 這些觀點(diǎn)對軟件測試工作是極為不利的,必須澄清認(rèn)識(shí)、端正態(tài)度,才可能提高軟件產(chǎn)品的質(zhì)量。 (2)測試的目的 如果測試的目的是為了盡可能多地找出錯(cuò)誤,那么測試就應(yīng)該直接針對軟件比較復(fù)雜的部分或是以前出錯(cuò)比較多的位置。 軟件測試是為了發(fā)現(xiàn)錯(cuò)誤而執(zhí)行程序的過程; 測試是為了證明程序有錯(cuò),而不是證

50、明程序無錯(cuò)誤; 一個(gè)好的測試用例是在于它能發(fā)現(xiàn)至今未發(fā)現(xiàn)的錯(cuò)誤; 一個(gè)成功的測試是發(fā)現(xiàn)了至今未發(fā)現(xiàn)的錯(cuò)誤的測試。 這種觀點(diǎn)可以提醒人們測試要以查找錯(cuò)誤為中心,而不是為了演示軟件的正確功能。但是僅憑字面意思理解這一觀點(diǎn)可能會(huì)產(chǎn)生誤導(dǎo),認(rèn)為發(fā)現(xiàn)錯(cuò)誤是軟件測試的唯一目,查找不出錯(cuò)誤的測試就是沒有價(jià)值的,事實(shí)并非如此。 首先,測試并不僅僅是為了要找出錯(cuò)誤。通過分析錯(cuò)誤產(chǎn)生的原因和錯(cuò)誤的分布特征,可以幫助項(xiàng)目管理者發(fā)現(xiàn)當(dāng)前所采用的軟件過程的缺陷,以便改進(jìn)。同時(shí),這種分析也能幫助我們設(shè)計(jì)出有針對性地檢測方法,改善測試的有效性。其次,沒有發(fā)現(xiàn)錯(cuò)誤的測試也是有價(jià)值的,完整的測試是評定測試質(zhì)量的一種方法。6.2

51、.2 測試的步驟與開發(fā)過程類似,測試過程也必須分步驟進(jìn)行,每個(gè)步驟在邏輯上是前一個(gè)步驟的繼續(xù)。大型軟件系統(tǒng)通常由若干個(gè)子系統(tǒng)組成,每個(gè)子系統(tǒng)又由若干個(gè)模塊組成。因此,大型軟件系統(tǒng)的測試基本上由下述幾個(gè)步驟組成:(1)模塊測試 在這個(gè)測試步驟中所發(fā)現(xiàn)的往往是編碼和詳細(xì)設(shè)計(jì)的錯(cuò)誤。(2)系統(tǒng)測試 在這個(gè)測試步驟中發(fā)現(xiàn)的往往是軟件設(shè)計(jì)中的錯(cuò)誤,也可能發(fā)現(xiàn)需求說明中的錯(cuò)誤。(3)驗(yàn)收測試 在這個(gè)測試步驟中發(fā)現(xiàn)的往往是系統(tǒng)需求說明書中的錯(cuò)誤。6.2.3 測試的主要內(nèi)容為了保證測試的質(zhì)量,將測試過程分成幾個(gè)階段,即:代碼審查、單元測試、集成測試、確認(rèn)測試和系統(tǒng)測試。 (1)單元測試 單元測試集中在檢查軟件

52、設(shè)計(jì)的最小單位模塊上,通過測試發(fā)現(xiàn)實(shí)現(xiàn)該模塊的實(shí)際功能與定義該模塊的功能說明不符合的情況,以及編碼的錯(cuò)誤。 (2)集成測試 集成測試是將模塊按照設(shè)計(jì)要求組裝起來同時(shí)進(jìn)行測試,主要目標(biāo)是發(fā)現(xiàn)與接口有關(guān)的問題。如一個(gè)模塊與另一個(gè)模塊可能有由于疏忽的問題而造成有害影響;把子功能組合起來可能不產(chǎn)生預(yù)期的主功能;個(gè)別看起來是可以接受的誤差可能積累到不能接受的程度;全程數(shù)據(jù)結(jié)構(gòu)可能有錯(cuò)誤等。 (3)確認(rèn)測試 確認(rèn)測試的目的是向未來的用戶表明系統(tǒng)能夠像預(yù)定要求那樣工作。經(jīng)集成測試后,已經(jīng)按照設(shè)計(jì)把所有的模塊組裝成一個(gè)完整的軟件系統(tǒng),接口錯(cuò)誤也已經(jīng)基本排除了,接著就應(yīng)該進(jìn)一步驗(yàn)證軟件的有效性,這就是確認(rèn)測試的

53、任務(wù),即軟件的功能和性能如同用戶所合理期待的那樣。 (4)系統(tǒng)測試 軟件開發(fā)完成以后,最終還要與系統(tǒng)中其他部分配套運(yùn)行,進(jìn)行系統(tǒng)測試。包括恢復(fù)測試、安全測試、強(qiáng)度測試和性能測試等。 單獨(dú)對系統(tǒng)的測試主要從以下幾方面入手: 功能測試:測試是否滿足開發(fā)要求,是否提供設(shè)計(jì)所描述的功能,是否用戶的需求都得到滿足。功能測試是系統(tǒng)測試最常用和必須的測試,通常還會(huì)以正式的軟件說明書為測試標(biāo)準(zhǔn)。 強(qiáng)度測試及性能測試:測試系統(tǒng)能力最高實(shí)際限度,即軟件在一些超負(fù)荷情況下功能實(shí)現(xiàn)的情況。 安全測試:驗(yàn)證安裝在系統(tǒng)內(nèi)的保護(hù)機(jī)構(gòu)確實(shí)能夠?qū)ο到y(tǒng)進(jìn)行保護(hù),使之不受各種非常的干擾。針對本系統(tǒng)主要是對權(quán)限系統(tǒng)的測試和對無效數(shù)據(jù)

54、、錯(cuò)數(shù)據(jù)、和非法數(shù)據(jù)干擾的能力的測試。經(jīng)過上述的測試過程對軟件進(jìn)行測試后,軟件基本滿足開發(fā)的要求,測試宣告結(jié)束。 結(jié)束語幾個(gè)月來忙碌緊張而又有條不紊的畢業(yè)設(shè)計(jì),使我有機(jī)會(huì)對本專業(yè)的基本理論、專業(yè)知識(shí)和基本技術(shù)有了更深入的了解和體會(huì),使我在四年中所學(xué)到的知識(shí)得到了系統(tǒng)和升華,真正達(dá)到了學(xué)以致用。 對管理信息系統(tǒng)的體會(huì) 管理信息系統(tǒng)是一門融管理科學(xué)、信息科學(xué)、系統(tǒng)科學(xué)、計(jì)算機(jī)科學(xué)與現(xiàn)代通信技術(shù)為一體的一門綜合性邊緣學(xué)科。它是運(yùn)用系統(tǒng)的方法以計(jì)算機(jī)和現(xiàn)代通信技術(shù)為基本信息處理手段和工具的,能為管理決策提供信息服務(wù)的人機(jī)系統(tǒng).它可以實(shí)現(xiàn)數(shù)據(jù)處理功能、預(yù)測功能、計(jì)劃功能、控制功能和輔助決策功能。管理信息

55、系統(tǒng)的開發(fā)是一項(xiàng)復(fù)雜的系統(tǒng)工程,必須嚴(yán)格的按照系統(tǒng)規(guī)劃、系統(tǒng)分析、系統(tǒng)設(shè)計(jì)、系統(tǒng)實(shí)施、系統(tǒng)運(yùn)行與評價(jià)的開發(fā)步驟來進(jìn)行。管理信息系統(tǒng)旨在提供一個(gè)全面的信息加工處理進(jìn)一步利用的工具,以提高管理水平。在系統(tǒng)開發(fā)之前,必須了解該系統(tǒng)的特點(diǎn)、適用范圍以及使用者需要一個(gè)什么樣的系統(tǒng),以此作為基礎(chǔ)為開發(fā)系統(tǒng)準(zhǔn)確定位,然后對使用者所需實(shí)現(xiàn)的功能進(jìn)行分析總結(jié),根據(jù)使用者的實(shí)際要求來給系統(tǒng)設(shè)計(jì)一個(gè)初步方案。系統(tǒng)的開發(fā)不僅是要實(shí)現(xiàn)對數(shù)據(jù)處理的及時(shí)與正確,而且要考慮系統(tǒng)是否具有控制功能,及時(shí)將數(shù)據(jù)反饋給操作者,以進(jìn)行監(jiān)測和協(xié)調(diào),保證系統(tǒng)的正常運(yùn)行;也要考慮是否具有預(yù)測功能,運(yùn)用一定的數(shù)學(xué)方法利用歷史的數(shù)據(jù)對未來進(jìn)行預(yù)

56、測的工作。設(shè)計(jì)實(shí)踐上的體會(huì) 在設(shè)計(jì)的過程中,我掌握了很多了很多關(guān)于本系統(tǒng)的編程知識(shí),并對這種成熟并廣泛應(yīng)用的技術(shù)進(jìn)行了深入的學(xué)習(xí)。設(shè)計(jì)的過程也是一個(gè)再學(xué)習(xí)的過程,在遇到問題的時(shí)候我盡量自己想辦法解決,這在很大程度上激發(fā)了我們的自學(xué)能力;在沒有辦法解決的情況下,認(rèn)真的向老師請教,從老師那里我學(xué)到了很多的知識(shí),老師對我的指導(dǎo)起到了畫龍點(diǎn)睛的作用。以往我們曾經(jīng)有過多次設(shè)計(jì)的體會(huì),但只是設(shè)計(jì)一個(gè)模塊或一個(gè)小系統(tǒng),而這一次畢業(yè)設(shè)計(jì)是綜合所學(xué)的管理和計(jì)算機(jī)的知識(shí)來設(shè)計(jì)一個(gè)適合運(yùn)行管理的系統(tǒng)軟件。要想設(shè)計(jì)使用戶滿意,就需要我們付出更多的努力。我在設(shè)計(jì)中經(jīng)常出現(xiàn)一些問題不知該如何解決,在此時(shí)許多同學(xué)給予了我們

57、幫助。在設(shè)計(jì)的過程中增加了于實(shí)際接觸的機(jī)會(huì),不僅培養(yǎng)了我的自學(xué)和編程能力,讓我在即將離開學(xué)校進(jìn)入社會(huì)之前有了一定的資本,提高了我與人溝通的能力。程序設(shè)計(jì)中的體會(huì) 在我的程序設(shè)計(jì)過程中,我充分的體會(huì)到了“實(shí)踐出真知”這一點(diǎn),書本上的知識(shí)是不夠的,只有把理論與實(shí)踐相結(jié)合才能夠真正的學(xué)到知識(shí)。一個(gè)管理信息系統(tǒng)的設(shè)計(jì),不可能一步到位,還需要不斷的完善和補(bǔ)充。同時(shí),系統(tǒng)中還存在許多問題,有待在日后的使用中發(fā)現(xiàn)和解決。編程前的深思熟慮是減少程序調(diào)試工作量的重要方法,只有進(jìn)行充分考慮,才會(huì)減少調(diào)試過程中的工作量。雖然在開始寫程序之前我們做了多的準(zhǔn)備工作,但在真正的寫程序時(shí)仍然發(fā)現(xiàn)許多問題,有些問題是分析時(shí)的

58、疏漏,有些則是如果不做無論如何也想不到的。致謝在本次畢業(yè)設(shè)計(jì)過程中,得到了指導(dǎo)老師的指導(dǎo)與支持。在此特別感謝XX老師的大力幫助。指導(dǎo)老師的悉心指導(dǎo)和大力支持,在總體結(jié)構(gòu)、功能的把握上給予了非常大的幫助,同時(shí)根我們提供了非常優(yōu)越的設(shè)計(jì)環(huán)境,并對我在編程、數(shù)據(jù)庫設(shè)計(jì)等細(xì)節(jié)工作上給予了耐心的指導(dǎo),對于我們小組順利完成這次畢業(yè)設(shè)計(jì)起到了關(guān)鍵性的作用。另外和我同組同學(xué)大家始終團(tuán)結(jié)協(xié)作,努力拼搏,增強(qiáng)了我的團(tuán)隊(duì)意識(shí),并且我們接下了深厚的友誼,我們自始至終在一種愉快的氣氛中學(xué)習(xí)工作。此次畢業(yè)設(shè)計(jì)對提高我的編程技術(shù)、協(xié)調(diào)團(tuán)隊(duì)成員的關(guān)系等方面都由許多益處。在此我一并向他表示感謝。我還要感謝我的母校XXXXXXX

59、大學(xué),以及在大學(xué)四年生活中給予我關(guān)心和幫助的老師和同學(xué),是他們教會(huì)了我專業(yè)的知識(shí)和做人的道理。通過這次畢業(yè)設(shè)計(jì)我還明白了作為一名計(jì)算機(jī)專業(yè)的大學(xué)畢業(yè)生,我們要會(huì)的不僅僅是編寫代碼,更重要的是要有整體把握系統(tǒng)設(shè)計(jì)的能力。我會(huì)在以后的工作和學(xué)習(xí)中不斷完善自己,為我最熱愛的母校爭光,為自己翻開輝煌的新篇章。轉(zhuǎn)眼間,大學(xué)生活即將結(jié)束,回首過去四年的大學(xué)生活,真是有苦也有樂,然而更多的則是收獲,感謝母校的各位老師不但無私地傳授給我們知識(shí),也教會(huì)了我們?nèi)绾巫鋈恕9芾硇畔⑾到y(tǒng)專業(yè)的畢業(yè)設(shè)計(jì)任務(wù)繁重,但正是在這幾個(gè)月緊張而充實(shí)的設(shè)計(jì)中,我感到自己的知識(shí)得到了一次升華,我相信:我的畢業(yè)設(shè)計(jì)會(huì)給我的四年大學(xué)畫上一

60、個(gè)圓滿的句號(hào)。21世紀(jì)已經(jīng)到來了,在新的世紀(jì)里,人們自然對未來有許多美好的愿望和設(shè)想?,F(xiàn)代科學(xué)技術(shù)的飛速發(fā)展,改變了世界,也改變了世界的生活。作為新世紀(jì)的大學(xué)生,應(yīng)當(dāng)站在世界的發(fā)展前列,掌握現(xiàn)代科學(xué)技術(shù)知識(shí),調(diào)整自己的知識(shí)結(jié)構(gòu)和能力結(jié)構(gòu),以適應(yīng)社會(huì)發(fā)展的要求。新世紀(jì)需要具有豐富現(xiàn)代科學(xué)知識(shí)、能夠獨(dú)立解決面臨任務(wù)、有創(chuàng)新意識(shí)的新型人才。參考文獻(xiàn)1 BruceEckel.JAVA編程思想. 機(jī)械工業(yè)出版社,2003年10月:1-3782賽奎春.JAVA工程應(yīng)用與項(xiàng)目實(shí)踐. 機(jī)械工業(yè)出版社, 2002年8月:23-2943FLANAGAN.JAVA技術(shù)手冊. 中國電力出版社,2002年6月:1-46

61、54孫一林,彭波.JSP數(shù)據(jù)庫編程實(shí)例. 清華大學(xué)出版社,2002年8月:30-2105LEE ANNE PHILLIPS.巧學(xué)活用 JSP.電子工業(yè)出版社,2004年8月:1-3196飛思科技產(chǎn)品研發(fā)中心.JSP應(yīng)用開發(fā)詳解.電子工業(yè)出版社,2003年9月:32-3007耿祥義,張躍平.JSP實(shí)用教程. 清華大學(xué)出版社,2003年5月1日:1-3548孫涌.現(xiàn)代軟件工程.北京希望電子出版社,2003年8月:1-246 9薩師煊,王珊.數(shù)據(jù)庫系統(tǒng)概論.高等教育出版社,2002年2月:346010Brown等.JSP編程指南(第二版). 電子工業(yè)出版社 ,2003年3月:1-268 11清宏計(jì)算機(jī)工作室.JSP編程技巧. 機(jī)械工業(yè)出版社, 2004年5月:1-410 12朱紅,司光亞.JSP編程指南.電子工業(yè)出版社, 2001年9月:34-307

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

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!