freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于java的航空查詢系統(tǒng)-文庫吧

2025-04-17 19:19 本頁面


【正文】 現(xiàn)層作組織表現(xiàn),該系統(tǒng)的 MVC 框架采用Struts。 Service 層(就是業(yè)務(wù)邏輯層),負(fù)責(zé)實(shí)現(xiàn)業(yè)務(wù)邏輯。業(yè)務(wù)邏輯層以 DAO 層為基礎(chǔ),通過對 DAO 組件的正面模式包裝,完成系統(tǒng)所要求的業(yè)務(wù)邏輯。 DAO 層,負(fù)責(zé)與持久化對象交互。該層封裝了數(shù)據(jù)的增、刪、查、改的操作。 PO,持久化對象。通過實(shí)體關(guān)系映射工具將關(guān)系型 數(shù)據(jù)庫的數(shù)據(jù)映射成對象,很方便地實(shí)現(xiàn)以面向?qū)ο蠓绞讲僮鲾?shù)據(jù)庫,該系統(tǒng)采用 Hibernate 作為 ORM 框架。 Spring 的作用貫穿了整個中間層,將 Web 層、 Service 層、 DAO 層及 PO 無縫整合,其數(shù)據(jù)服務(wù)層用來存放數(shù)據(jù)。 Struts 跟 Tomcat、 Turbine 等諸多 Apache 項目一樣,是開源軟件,這是它的一大優(yōu)點(diǎn)。使開發(fā)者能更深入的了解其內(nèi)部實(shí)現(xiàn)機(jī)制。 在傳統(tǒng)的 Model 1 的程序結(jié)構(gòu)中,只要有一點(diǎn)小的需求發(fā)生改變,將意味著放棄整個頁面?;蛘吒膶憽km然前期的開發(fā)速度快,除非可以保證以后永遠(yuǎn)不會 改變應(yīng)用的結(jié)構(gòu),否則不要采用 Model 1 的結(jié)構(gòu)。采用 Hibernate 作為持久層技術(shù)的最大的好處在于:可以完全以面向?qū)ο蟮姆绞竭M(jìn)行系統(tǒng)分析、系統(tǒng)設(shè)計。 DAO 模式需要為每個 DAO 組件編寫 DAO 接口,同時至少提供一個實(shí)現(xiàn)類,根據(jù)不同需要,可能有多個實(shí)現(xiàn)類。用 Spring 容器代替 DAO 工廠通常情況下,引入接口就不可避免需要引入工廠來負(fù)責(zé) DAO 組件的生成。 Spring 實(shí)現(xiàn)了兩種基本模式:單態(tài)模式和工廠模式。 8 而使用 Spring 可以完全避免使用工廠模式,因為 Spring 就是個功能非常強(qiáng)大的工廠。因此,完全可以讓 Spring 充當(dāng) DAO 工廠由 Spring 充當(dāng) DAO 工廠時,無須程序員自己實(shí)現(xiàn)工廠模式,只需要將 DAO 組件配置在 Spring 容器中,由 ApplicationContext負(fù)責(zé) 查詢 DAO 組件的創(chuàng)建即可。借助于 Spring 提供的依賴注入,其他組件甚至不用訪問工廠,一樣可以直接使用 DAO 實(shí)例。 ( 二 )系統(tǒng)功能分析 該系統(tǒng) 從功能實(shí)現(xiàn)了對航空信息的查詢,修改,刪除,添加功能。在該系統(tǒng)中主要是對航空信息的操作和 查詢 ,修改,刪除,添加功能都是為查詢做基礎(chǔ),在整個系統(tǒng)中作為用戶只對查詢功能做操作,通過刪除,修改,添加功能來 及時更新航空信息,以保證用戶在查詢航空信息的時候能得到更全面更及時的信息。這樣使得該系統(tǒng)的實(shí)用性更強(qiáng)。 (三 )系統(tǒng)模塊設(shè)計 該系統(tǒng)從模塊劃分可以分為兩大模塊:用戶查詢模塊, 查詢 員對航空信息的維護(hù)模塊。 ,通過用戶給定的條件提交給服務(wù)器,服務(wù)器返回給用戶需要的信息。 員維護(hù)模塊通過查詢,修改,刪除,添加功能及時的維護(hù)服務(wù)器的數(shù)據(jù)和信息,保證航空信息的真實(shí),及時,全面性。 (四 )系統(tǒng)結(jié)構(gòu)圖 從功能和模塊結(jié)合,系統(tǒng)結(jié)構(gòu)和流程圖如下 (圖 31): 9 圖 31 系統(tǒng)流程圖 (五 )系統(tǒng)的數(shù)據(jù)庫設(shè)計 本系統(tǒng)建有兩張數(shù)據(jù)表:用戶信息表 (tb_user)和航空信息表 (tb_ ticket)。 1. 用戶信息表 (tb_user)(表 31)用于保存用戶的信息 表 31 用戶信息表 字段名 數(shù)型 字段描述 userid Number 用戶的唯一標(biāo)識 (seq_userid) Username Char(32) 用戶登錄的用戶名 Password Char(32) 用戶登錄的密碼 Tel Char(16) 用戶的電話 Char( 32) 用戶的電子郵件 Address Char( 256) 用戶地址 數(shù)據(jù)庫 用戶 查詢員 用戶篩選條件 身份驗證 維護(hù)和更新數(shù)據(jù) 服務(wù)器 10 2. 航空信息表 (tb_ ticket)(表 32)用于保存航空信息。 表 32 航空信息表 字段名 數(shù)據(jù)類型 字段描述 Ticketid Number 機(jī)票的唯一標(biāo)識( seq_ticketid) Ticketnum Char(32) 機(jī)票編號 Ticketname Char(128) 機(jī)票對應(yīng)的航空公司 Start Char( 128) 飛機(jī)起點(diǎn)站 End Char( 128) 飛 機(jī)終點(diǎn)站 Surplus Number 機(jī)票剩余的數(shù)量 Flightnum Char( 32) 航班編號 Starttime Char( 32) 飛機(jī)起飛時間 Endtime Char( 32) 飛機(jī)到終點(diǎn)時間 price Float 飛機(jī)票價格 11 四、 詳細(xì)設(shè)計 (一)設(shè)計概述 從 設(shè) 計 上 概 述 , 該 系 統(tǒng) 使 用 了 MVC 模 式 設(shè) 計 , MVC 英 文 即ModelViewController,即把一個應(yīng)用的輸入、處理、輸出流程按照 Model、 View、Controller 的方式進(jìn)行分離,這樣一個應(yīng)用被分成三個層 —— 模型層、視圖層、控制層。 視圖 (View)代表用戶交互界面,對于 Web 應(yīng)用來說,可以概括為 HTML 界面,但有可能為 XHTML、 XML 和 Applet。隨著應(yīng)用的復(fù)雜性和規(guī)模性,界面的處理也變得具有挑戰(zhàn)性。一個應(yīng)用可能有很多不同的視圖, MVC 設(shè)計模式對于視圖的處理僅限于視圖上數(shù)據(jù)的采集和處理,以及用戶的請求,而不包括在視圖上的業(yè)務(wù)流程的處理。業(yè)務(wù)流程的處理交予模型 (Model)處理。比如一個訂單的視圖只接受來自模型的數(shù)據(jù)并顯示給用戶,以及將用戶界面的輸入數(shù)據(jù)和請求傳遞給控制和模型。 模型 (Model):就是 業(yè)務(wù)流程 /狀態(tài)的處理以及業(yè)務(wù)規(guī)則的制定。業(yè)務(wù)流程的處理過程對其它層來說是黑箱操作,模型接受視圖請求的數(shù)據(jù),并返回最終的處理結(jié)果。業(yè)務(wù)模型的設(shè)計可以說是 MVC 最主要的核心。目前流行的 EJB 模型就是一個典型的應(yīng)用例子,它從應(yīng)用技術(shù)實(shí)現(xiàn)的角度對模型做了進(jìn)一步的劃分,以便充分利用現(xiàn)有的組件,但它不能作為應(yīng)用設(shè)計模型的框架。它僅僅告訴你按這種模型設(shè)計就可以利用某些技術(shù)組件,從而減少了技術(shù)上的困難。對一個開發(fā)者來說,就可以專注于業(yè)務(wù)模型的設(shè)計。 MVC 設(shè)計模式告訴我們,把應(yīng)用的模型按一定的規(guī)則抽取出來,抽取的層次很重要, 這也是判斷開發(fā)人員是否優(yōu)秀的設(shè)計依據(jù)。抽象與具體不能隔得太遠(yuǎn),也不能太近。 MVC 并沒有提供模型的設(shè)計方法,而只告訴你應(yīng)該組織管理這些模型,以便于模型的重構(gòu)和提高重用性。我們可以用對象編程來做比喻, MVC 定義了一個頂級類,告訴它的子類你只能做這些,但沒法限制你能做這些。 控制 (Controller)可以理解為從用戶接收請求 , 將模型與視圖匹配在一起,共同 12 完成用戶的請求。劃分控制層的作用也很明顯,它清楚地告訴你,它就是一個分發(fā)器,選擇什么樣的模型,選擇什么樣的視圖,可以完成什么樣的用戶請求。控制層并不做任何的數(shù) 據(jù)處理。例如,用戶點(diǎn)擊一個連接,控制層接受請求后 , 并不處理業(yè)務(wù)信息,它只把用戶的信息傳遞給模型,告訴模型做什么,選擇符合要求的視圖返回給用戶。因此,一個模型可能對應(yīng)多個視圖,一個視圖可能對應(yīng)多個模型。 模型、視圖與控制器的分離,使得一個模型可以具有多個顯示視圖。如果用戶通過某個視圖的控制器改變了模型的數(shù)據(jù),所有其它依賴于這些數(shù)據(jù)的視圖都應(yīng)反映到這些變化。因此,無論何時發(fā)生了何種數(shù)據(jù)變化,控制器都會將變化通知所有的視圖,導(dǎo)致顯示的更新。這實(shí)際上是一種模型的變化 傳播機(jī)制。模型、視圖、控制器三者之間的關(guān)系 和各自的主要功能。 (二)、總體設(shè)計構(gòu)架。 設(shè)計需要的架包, 以下 架包,包括了 ssh 三大框架需要的架包和數(shù)據(jù)庫驅(qū)動架包,如圖:圖 41 13 圖 41 系統(tǒng)架包結(jié)構(gòu) 后臺 java 代碼部分創(chuàng)建的類和包。 后臺代碼部分完成了分為兩點(diǎn),數(shù)據(jù)操作和邏輯控制,數(shù)據(jù)操作主要是在avitionDAO 和 avitionservice 兩個包中,使用 spring 的原理操作數(shù)據(jù),包類架構(gòu)如下,圖 42 圖 42 后臺代碼結(jié)構(gòu) 14 前臺頁面設(shè)計構(gòu)架,前臺頁面分為前臺和后臺兩個模塊,模塊一,用戶查詢模塊,模塊二,管理員數(shù)據(jù)管 理頁面,設(shè)計構(gòu)架如圖,圖: 43 圖: 43 前臺頁面結(jié)構(gòu) css 樣式和 js 架包設(shè)計構(gòu)架 在前臺頁面設(shè)計上,為了保證給用戶友好的界面操作,主要使用了 jquery框架,和 css 樣式設(shè)計,為了保證用戶和管理員在查詢條件和數(shù)據(jù)操作時的對字段的一致性,頁面設(shè)計上使用了日歷選擇器和全國省市二級聯(lián)動。器架包架構(gòu)如圖:圖 44 圖 44 css 和 js 架包結(jié)構(gòu) 15 struts 和 spring 配置 Struts 和 spring 配置文件 提供了,前臺和后臺 java 代碼的交互,以及提供了連接數(shù)據(jù)庫的連接,配置代碼如 見 附錄 。 : ( 二 )系統(tǒng)登錄界面設(shè)計 如圖 45,登錄頁面的設(shè)計的要點(diǎn)在于登錄驗證,對于管理員的帳號和密碼必須在服務(wù)器是存在的,密碼輸入框的 type 為 password,并且在管理員輸入帳號或密碼錯誤,帳號和密碼沒有輸入的情況下都給于不同的提示,以引導(dǎo)管理員正確的登錄。 圖 45 系統(tǒng)登錄界面 (三 )系統(tǒng)首界面設(shè)計 和查詢設(shè)計 如圖 45 在首頁將頁面分為條件輸入模塊和返回信息顯示模塊。在條件輸入模塊中對于地點(diǎn)的輸入使用 jquery 的動態(tài)級聯(lián)選擇城市,日期使用 jquery 的日期選擇器來選擇時間,這樣做的好處是保證了數(shù)據(jù)類型的穩(wěn)定,不需要對用戶提供的條件信息做太多的篩選。 在返回信息顯示模塊中使用了 s:iteraior標(biāo)簽迭代顯示信息,同時使用無刷新分頁異步請求技術(shù),減少了用戶等待的時間。 16 圖 46 查詢設(shè)計界面 (四 ) 后臺管理設(shè)計 作為后臺管理頁面對數(shù)據(jù)的更新,系統(tǒng)提供了對航空信息的查詢,修改,查看,刪除四個功能,以保證能及時的更新航空信息。 航空信息瀏覽頁面。 航空信息瀏覽頁面,在管理員登錄后直接跳轉(zhuǎn)到該頁面,提供給管理員瀏覽信息,頁面 如下:圖 47 圖 47 信息瀏覽界面 航空信息查看頁面。 17 點(diǎn)擊每條記錄后面的【詳情】標(biāo)簽,頁面將跳轉(zhuǎn)到航空信息詳情也頁面,提供更詳細(xì)的信息,如圖:圖 48 圖 48 信息詳情界面 航空信息刪除功能。 在瀏覽的過程中,如果需要刪除頁面信息,就在每條記錄前面的多選框打上勾,然后點(diǎn)擊表頭上的【刪除】按鈕,選中的信息就會唄刪除。 航空信息修改頁面。 點(diǎn)擊每條記錄后面的【修改】標(biāo)簽,頁面跳轉(zhuǎn)到修改頁面,并且頁面會顯示該條記錄的詳細(xì)信息,如果需要修改某一個字段,可直接在文本框輸入修改后的信息,如圖: 圖 49 圖 49 信息修改頁面 18 ( 五 )系統(tǒng)維護(hù)設(shè)計 系統(tǒng)的維護(hù)設(shè)計依賴于管理員的后臺操作,在管理員操作模塊中,通過系統(tǒng)提供的對航空信息的添加、修改和刪除功能及時的更新數(shù)據(jù)庫信息。作為維護(hù)設(shè)計專門提供的管理員操作模塊主要是為了給信息和數(shù)據(jù)庫的維護(hù)提供了方便和簡單的操作維護(hù)。以提高系統(tǒng)的性能。 19 五 、系統(tǒng)測試、編譯與發(fā)行 (一) 程序功能測試 該系統(tǒng)測試環(huán)境如下表: 表 51 系統(tǒng)測試環(huán)境表 硬件環(huán)境 Cup“雙核 內(nèi)存: 1GB 軟件環(huán)境 Window 、 、 、 IE9 在系統(tǒng)的測試過程,以用戶的身份登錄 頁面做測試,步驟如下: 1. 輸入條件 ,如表 : 表 52 輸入條件表 系統(tǒng)需要條件 用戶輸入條件 輸入數(shù)據(jù)類型 出發(fā)城市 武漢 String 到達(dá)城市 上海 String 出發(fā)時間 20210228 String 2. 服務(wù)器返回數(shù)據(jù)信息,如表 : 表 53 返回數(shù)據(jù)表 返回信息名 返回信息數(shù)據(jù) 返回信息數(shù)據(jù)類型 出發(fā)城市 武漢 String 到達(dá)城市 上海 String 航班編號 2021022801 Int 航班起飛時間 202102281445 Int 航班降落時間 202102281326 Int 飛機(jī)票價格 Float : 20 圖 51 系統(tǒng)測試流程圖 (二 )測試 bug: 測試過程中,使用了大量的測試數(shù)據(jù)進(jìn)行測試系統(tǒng)的性能,用戶數(shù)據(jù)輸入錯誤給予提示 : 出發(fā)城市有誤、到達(dá)城市有誤、出發(fā)時間有誤 、沒有您需要的信息 等。 出現(xiàn)的 bug 主要在服務(wù)器返回數(shù)據(jù)不全面,無法返回數(shù)據(jù)等,通過大量的測試最終解決 bug。 開始 輸入條件 條件判斷 是否響應(yīng) 返回數(shù)據(jù) 結(jié)束 False True
點(diǎn)擊復(fù)制文檔內(nèi)容
范文總結(jié)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1