【正文】
ed, nearly three decades, the needs of people by simple material needs, rising to double the material and spiritual needs. Tourism has bee one of the important activities of living. The graduation project is the application of JSP + MySQL technology, using a JSP + JavaBean + Servlet framework for the development of small tourism website and the development process are summarized in the article, this paper describes the development of the main flow of small tourism website , introduced the software development background, describes the technology used in the development of its main features, the software analyzes the technical feasibility and social viability of the functional requirements of the software are analyzed, the site lists should implement the various functions of the software development process in detail as well as the problems encountered in the development and solutions for the narrative, some of the major features of the site conducted a detailed implementation steps. System uses the MVC pattern Model2 framework for the development, the use of the advantages of this framework is to improve the efficiency of system development, but also to meet the system39。這項技術,便是伴隨著計算機而興起的,影響人類生活的十大科技發(fā)明之中的一個——互聯(lián)網(wǎng)(Internet)。1983年,TCP/IP協(xié)議成為ARPNET上的標準協(xié)議,這樣,所有使用TCP/IP協(xié)議的計算機都能利用互聯(lián)網(wǎng)相互通信,自此,Internet——互聯(lián)網(wǎng)便正式誕生。以電腦為載體,范圍覆蓋全球各地,沒有國界,不分人種,時時刻刻地提供服務[7]。小型旅游網(wǎng)站就是一個為用戶提供信息的在線旅行社,用戶可以在網(wǎng)站中瀏覽景點信息,景點周邊的酒店、賓館信息,瀏覽網(wǎng)站中提供的旅游線路,如果是注冊會員還可預訂各條旅游線路。與此小型旅游網(wǎng)站的需求相結合,該網(wǎng)站使用B/S結構,主要實現(xiàn)在服務器端進行旅游景點的展示,旅游景點周邊的食宿信息展示,旅游網(wǎng)站推出的旅游路線線的展示,路線詳細信息的查詢、預訂等功能。第3章 對小型旅游網(wǎng)站進行了簡單的需求分析,對各個功能模塊進行了簡單的分析與劃分,同時對系統(tǒng)整體的設計和數(shù)據(jù)庫設計給出了設計方案。第二章 相關技術介紹 網(wǎng)站設計相關技術概述本小型旅游網(wǎng)站采用JSP+MySQL技術,運用了CSS+DIV技術進行靜態(tài)頁面設計。通過這些技術與方法,從而組成整個網(wǎng)站。使用這種結構,省去開發(fā)用戶界面的過程,直接使用Web瀏覽器(如IE,Chrome),向服務器端發(fā)送各種請求,然后服務器端進行處理,之后將處理結果返回瀏覽器端。B/S結構則只需要將服務器端的軟件進行升級,然后瀏覽器端的用戶只需重新登入系統(tǒng),即可體驗升級后的軟件。綜上所述,B/S結構相對于C/S結構具有更多的優(yōu)勢,而且結合此次開發(fā)的系統(tǒng)特點,本系統(tǒng)使用B/S結構進行開發(fā)。Model負責對業(yè)務數(shù)據(jù)/ 信息的處理,包括存取、加工、綜合等,它提供應用業(yè)務邏輯, 所有操作均在模型中完成,是程序執(zhí)行的關鍵部分;View是指用戶界面, 即為面向用戶的數(shù)據(jù)表示,數(shù)據(jù)進行處理后的結果通過視圖來顯示;Controller 管理用戶與視圖之間的交互, 負責View和Model之間的流程控制, 將用戶界面的操作映射到具體的 Model, 完成具體的業(yè)務邏輯,通過 Model 處理完的業(yè)務數(shù)據(jù)反應到View上[10]。 JavaScript組成JavaScript適用于靜態(tài)或動態(tài)網(wǎng)頁,是一種被廣泛使用的客戶端腳本語言。Ajax引擎的主要技術:XMLHttpRequest在IE中是XMLHttp組件的一個對象, 實現(xiàn)為 ActiveX對象。DOM 提供了標準的HTML和XML對象集,有標準的接口來訪問并操作這些對象集。在Ajax技術中,JavaScript是XMLHttpRequest和DOM交互的橋梁。隨著Ajax技術的日趨成熟,進入主流開發(fā)的市場,JavaScript的實現(xiàn)功能也更加豐富多彩。使用JDBC操作數(shù)據(jù)庫,需要數(shù)據(jù)庫廠商提供數(shù)據(jù)庫的驅動程序。以后, Java應用程序與數(shù)據(jù)庫實例之間的一切交互, 就由驅動程序轉換為數(shù)據(jù)庫實例DBMS所能理解的命令, 再將數(shù)據(jù)庫返回的結果轉換為Java 程序能識別的數(shù)據(jù)。MySQL的SQL語言是用于訪問數(shù)據(jù)庫的最常用標準化語言。 開發(fā)環(huán)境本次設計采用了以下開發(fā)環(huán)境:(1)數(shù)據(jù)庫:采用MySQL數(shù)據(jù)庫。(5)操作系統(tǒng):為Windows 7。他的主要功能如下:(1) 旅游景點瀏覽,用戶在網(wǎng)站中可以查看旅游景區(qū)的景點介紹信息,可以瀏覽已經(jīng)錄入數(shù)據(jù)庫的國內(nèi)與國外的景點信息。(5) 旅游路線預約,在用戶瀏覽旅游路線的詳細信息時,可以選擇預約該條線路,可以選擇數(shù)據(jù)庫中所選擇路線所擁有的旅行團,然后選擇預約,隨后輸入自己的身份識別信息,即可完成預約。(7) 酒店瀏覽頁面,與景點和路線瀏覽頁面類似,用戶也可瀏覽酒店的列表。到世界各地旅行,去領略世界其他地方的自然風光、人文景觀,是對人生活的一個良好的熏陶。 經(jīng)濟上的可行性以旅行社的角度出發(fā),本網(wǎng)站為小型旅游網(wǎng)站,可作為一個旅行社的在線業(yè)務平臺,通過在線用戶預約各條旅游線路來收取費用,同時還為在景區(qū)周邊的各個酒店、賓館等企業(yè)做廣告,收取廣告費,同時與食宿餐飲等企業(yè)合作,將每個旅行團的食宿與各企業(yè)掛鉤,實現(xiàn)盈利。它是功能豐富的JavaEE集成開發(fā)環(huán)境,包括了完備的編碼、調(diào)試、測試和發(fā)布功能,完整支持HTML,Struts, CSS,Javascript,SQL,及Hibernate等。為了方便后期的設計與編程工作,在劃分系統(tǒng)功能模塊時盡量注重模塊的獨立性,努力做到高內(nèi)聚,低耦合。為了防止惡意注冊,在提交注冊之前需輸入在頁面中顯示的使用隨機生成的彩色圖形驗證碼。(3) 景點瀏覽模塊。在景點瀏覽頁面,點擊所要詳細了解的景點后,將會進入景點詳細信息頁面,在該頁面中,系統(tǒng)將顯示景點的詳細信息,如景點簡介,景點價格,景點地址,景點聯(lián)系電話等,使用戶詳細了解到景點的信息。同時,用戶還可在主頁中,選擇瀏覽國內(nèi)路線或國際路線,系統(tǒng)將會根據(jù)數(shù)據(jù)庫中路線的地域標識展示用戶所需的路線列表。同時,如果用戶對這條線路感興趣,還可預訂該條線路的旅行團,但只有已登錄的用戶才可預訂線路,未注冊的用戶將無法預訂該條線路,會提示用戶只有在登錄后才可預訂線路。在路線詳細信息頁面,已登錄的注冊用戶可以預訂某條線路,點擊預約按鈕,將會跳轉至預約頁面,用戶可選擇不同出發(fā)時間的旅行團,然后輸入預約者的信息進行登記,然后提交方可完成預約。注冊模塊是網(wǎng)站中一個較為重要模塊,因為網(wǎng)站的核心功能——預約,必須是注冊用戶才可使用,所以完善注冊模塊非常重要。 登錄模塊數(shù)據(jù)流圖預約模塊是整個網(wǎng)站中最為重要的模塊,它是整個網(wǎng)站中的業(yè)務流程的根本所在。以及若干個小型模塊組成了網(wǎng)站的整體構成,小型模塊,如景點瀏覽及詳細信息瀏覽,路線瀏覽及路線詳細信息瀏覽,酒店瀏覽及酒店信息瀏覽,這些模塊是負責展示信息及與三個重要模塊之間相互聯(lián)系的樞紐,同時這幾個模塊的實現(xiàn)方式也是大同小異,均為用戶點擊后在數(shù)據(jù)庫中進行搜索,然后獲得所需數(shù)據(jù)的形式。 會員實體屬性圖(2) 景點信息,在景點信息實體中有以下屬性:景點ID,景點名稱,景點簡介,價格,地址,聯(lián)系電話。 游客實體屬性圖(6) 酒店,在酒店實體中有以下屬性:酒店ID,酒店名稱,平均價格,酒店簡介,地址,電話。 創(chuàng)建數(shù)據(jù)庫在數(shù)據(jù)庫中建表時,根據(jù)ER模型與建表規(guī)則,對各個實體實現(xiàn)建表。User表用于存放系統(tǒng)所有注冊用戶的詳細信息,包含用戶名、密碼、注冊時間、用戶的地址等內(nèi)容。這樣,UserID以及用戶的注冊時間在用戶注冊時不由用戶填充,是由數(shù)據(jù)庫自動生成,使得用戶在使用注冊功能是更加方便,更加人性化。 tourist表列名數(shù)據(jù)類型數(shù)據(jù)長度非空說明備注TouristIDINT是游客ID主鍵UserIDINT是登記者ID外鍵TourgroupIDINT是旅行團ID外鍵IDNumberVARCHAR20是身份證號TouristNameVARCHAR45是游客姓名TouristGenderVARCHAR3是游客性別TouristPhoneVARCHAR15否游客電話Tourgroup表用于存放開設的旅行團信息,包含旅行團ID、出發(fā)時間、導游名字、導游電話以及選擇的旅游線路ID等信息。 tourgroup表列名數(shù)據(jù)類型數(shù)據(jù)長度非空說明備注TourgroupIDINT是旅行團ID主鍵TourgroupTimeDATETIME是出發(fā)時間TourgroupNameVARCHAR20是導游姓名TourgroupPhoneVARCHAR20是導游電話TourrouteIDINT是旅游線路ID外鍵Tourroute表用于存放開設的旅游線路信息,包含線路ID、路線信息、路線標題、路線時長、路線價格以及區(qū)分路線地域等信息。 tourroute表列名數(shù)據(jù)類型數(shù)據(jù)長度非空說明備注TourrouteIDINT是線路ID主鍵TourrouteInformationVARCHAR200是線路簡介TourrouteTimeINT是路線時長TourroutePriceDOUBLE是路線價格TourrouteTitleVARCHAR45是線路標題TourroutePlaceINT是地域標識Scenicspot表用于存放在網(wǎng)站中已登記的旅游景點信息,包含景點ID、景點名稱、景點簡介、景點價格、景點地址、景點電話、景區(qū)圖片以及景點地域標識等信息。 scenicspot表列名數(shù)據(jù)類型數(shù)據(jù)長度非空說明備注ScenicspotIDINT是景點ID主鍵ScenicspotNameVARCHAR45是景點名稱ScenicspotPriceDOUBLE否景點價格ScenicspotAddressVARCHAR100否景點地址ScenicspotPhoneVARCHAR20否聯(lián)系電話ScenicspotInformationVARCHAR200否景點簡介ScenicspotPictureVARCHAR45否景區(qū)圖片ScenicspotPlaceINT是地域標識Spotofroute表用于存放已登記的景點和開設的路線之間的關系信息,因為景點和旅游線路是M:N聯(lián)系,旅游線路是由數(shù)據(jù)庫中的旅游景點組成,所以將它們之間的關系單獨建表,這樣做的好處是消除了冗余,同時也方便了對該數(shù)據(jù)庫中的表的數(shù)據(jù)的操作。其中RestaurantID為主鍵,是自動填充的自增整型數(shù)據(jù)。其中ScenicspotID和RestaurantID共為該表的主鍵而又同為外鍵,ScenicspotID對應scenicspot表中的ScenicspotID,RestaurantID對應restaurant表中的RestaurantID。該表中的數(shù)據(jù)大致與restaurant表中的數(shù)據(jù)相似,故在此不再重復進行介紹。其中ScenicspotID和HotelID共為該表的主鍵而又同為外鍵,ScenicspotID對應scenicspot表中的ScenicspotID,HotelID對