【正文】
R圖如圖11所示。圖10 自行車實體ER圖自行車狀態(tài)品牌名稱自行車編號押金租金數(shù)量類型備注規(guī)格門店(4)訂單實體。自行車實體包括了自行車編號、自行車名稱、類型、品牌、規(guī)格、狀態(tài)、數(shù)量、租金、押金、所屬門店、備注等屬性。管理員實體ER圖如圖9所示。圖8 會員實體ER圖會員身份證號性別姓名會員編號郵編住址Email會員賬號登錄密碼(2)管理員實體ER圖。會員實體包含了會員編號、會員賬號、登錄密碼、姓名、性別、身份證號、Email、住址、郵編等基本屬性。數(shù)據(jù)庫的概念結(jié)構(gòu)通常用ER圖來刻畫。留言信息主要的數(shù)據(jù)項有:留言編號、會員編號、留言內(nèi)容、留言時間、留言回復(fù)等。新聞信息主要的數(shù)據(jù)項有:新聞編號、標(biāo)題、內(nèi)容等。收款信息主要的數(shù)據(jù)項有:收款編號、訂單編號、租金、罰金、收款日期等。訂單信息主要的數(shù)據(jù)項有:訂單編號、會員編號、自行車編號、租賃數(shù)量、取車時間、還車時間、取車門店、還車門店、訂單處理、訂單日期等。自行車信息主要的數(shù)據(jù)項有:自行車編號、名稱、類型、品牌、規(guī)格、狀態(tài)、數(shù)量、租金、押金、備注等。管理員信息主要的數(shù)據(jù)項有:管理員編號、賬號、密碼等。會員信息主要的數(shù)據(jù)項有:會員編號、賬號、密碼、姓名、性別、身份證號、Email、住址、郵編等。通過對自行車租賃工作過程和數(shù)據(jù)流圖分析,設(shè)計如下的數(shù)據(jù)項和數(shù)據(jù)結(jié)構(gòu)。下面針對前四個階段做簡要描述。將數(shù)據(jù)庫設(shè)計過程分解為若干相互依存的階段,從而將一個大的問題局部化,減少局部問題對整體設(shè)計的影響及依賴,并利于多人合作。 數(shù)據(jù)庫設(shè)計數(shù)據(jù)庫設(shè)計的主要目標(biāo)是最大限度地滿足用戶的應(yīng)用功能,將用戶需要的數(shù)據(jù)及數(shù)據(jù)之間的聯(lián)系,全部準(zhǔn)確地存放在數(shù)據(jù)庫中,精確表達(dá)現(xiàn)實世界。(6)留言管理。(5)登錄設(shè)置。(4)車輛管理。(3)訂單管理。(2)會員管理。(1)新聞公告。圖6 網(wǎng)站體系結(jié)構(gòu)圖HTTP數(shù)據(jù)層功能層表示層HTML客戶端瀏覽器Web服務(wù)器數(shù)據(jù)庫 網(wǎng)站總體設(shè)計通過第三章對網(wǎng)站的需求分析后,將自行車租賃網(wǎng)站分為新聞公告、留言管理、訂單管理、車輛管理、登錄設(shè)置、會員管理等6個子模塊,其中網(wǎng)站整體功能結(jié)構(gòu)如圖7所示。表示層包含了網(wǎng)站的顯示邏輯,位于客戶瀏覽器端,它的任務(wù)是由瀏覽器向網(wǎng)絡(luò)上的Web服務(wù)器提出服務(wù)請求,Web服務(wù)器對用戶身份進(jìn)行驗證后用HTTP(Hyper Text Transfer Protocol)協(xié)議把所需的主頁傳送給客戶端,客戶機(jī)接受傳來的主頁文件,并把它顯示在Web瀏覽器上;功能層中包含了網(wǎng)站的事務(wù)處理邏輯,位于Web服務(wù)器端,它的任務(wù)是接受用戶的請求,首先需要執(zhí)行相應(yīng)的擴(kuò)展應(yīng)用程序與數(shù)據(jù)庫進(jìn)行連接,通過SQL等方式向數(shù)據(jù)庫提出數(shù)據(jù)處理申請,而后等數(shù)據(jù)服務(wù)器將數(shù)據(jù)處理的結(jié)果提交給Web服務(wù)器,再由Web服務(wù)器傳送回客戶端;數(shù)據(jù)層中包含了網(wǎng)站的數(shù)據(jù)處理邏輯,位于數(shù)據(jù)庫服務(wù)器端,它的任務(wù)是接受Web服務(wù)器對數(shù)據(jù)庫操縱的請求,實現(xiàn)對數(shù)據(jù)庫查詢、修改、更新等功能,把運行結(jié)果提交給Web服務(wù)器。具體還車流程如圖5所示。具體取車流程如圖4所示。具體租車流程如圖3所示。在日常發(fā)生的業(yè)務(wù)中,客戶預(yù)租車輛是主要的業(yè)務(wù),客戶既可以電話預(yù)租或到營業(yè)點預(yù)租,也可以在網(wǎng)上預(yù)訂,管理人員根據(jù)預(yù)租車輛的庫存情況以及客戶的信用狀況做出相應(yīng)的處理。 業(yè)務(wù)需求分析自行車租賃網(wǎng)站是專門針對自行車租賃業(yè)務(wù)所開發(fā)的一款以輔助經(jīng)營管理為基礎(chǔ),以決策分析為核心功能的現(xiàn)代企業(yè)管理網(wǎng)站。(3)準(zhǔn)確性。自行車租賃網(wǎng)站的開發(fā)應(yīng)保留一定的預(yù)留空間,便于網(wǎng)站的升級和二次開發(fā)工作;網(wǎng)站的視圖功能應(yīng)和網(wǎng)站的邏輯處理功能分離,網(wǎng)站的顯示應(yīng)隨著需求變化,但是這種變化不應(yīng)影響到網(wǎng)站內(nèi)部的邏輯處理功能,以提高網(wǎng)站的穩(wěn)定性;(2)實時性。 性能需求分析自行車租賃網(wǎng)站的性能需求主要體現(xiàn)在靈活性、實時性、準(zhǔn)確性等3個方面。基本流:①會員點擊“我的訂單”進(jìn)入訂單查看頁面。前置條件:用戶必須已經(jīng)成功登錄網(wǎng)站。(9)用況名:查看訂單簡述:顯示之前預(yù)訂訂單的編號、自行車編號、數(shù)量、訂單日期、取車門店、還車門店等信息。后置條件:用戶成功發(fā)表留言。參與者:用戶?;玖鳎孩贂T點擊“留言板”進(jìn)入留言頁面。前置條件:無。(7)用況名:查看留言簡述:顯示會員編號、留言內(nèi)容、留言時間等信息。后置條件:得到路線信息。參與者:用戶。②查看所有新聞列表。后置條件:得到所有新聞列表。參與者:用戶。基本流:①點擊預(yù)訂車輛進(jìn)入車輛預(yù)訂界面;②填寫預(yù)訂信息;③點擊“提交”,完成車輛預(yù)訂。前置條件:用戶必須已經(jīng)成功登錄網(wǎng)站。(4)用況名:預(yù)訂車輛簡述:對選擇好的車輛完成在線預(yù)訂操作。后置條件:顯示車輛所有的信息。參與者:用戶。異常流:①用戶賬號、密碼輸入錯誤無法登錄網(wǎng)站,重新登錄;②用戶密碼丟失,重新獲取密碼再進(jìn)行登錄。后置條件:登錄成功,在首頁顯示會員編號。參與者:用戶。異常流:①輸入信息不合要求或用戶名已存在,注冊失敗,重新注冊。后置條件:注冊成功或注冊失敗。參與者:用戶。 會員功能需求分析會員的功能需求主要分為注冊、登錄、查找車輛、預(yù)訂車輛、查看新聞、查看路線、查看留言、留言、查看訂單等,會員功能需求用況圖如圖2所示。后置條件:在留言列表中成功刪除某條留言信息。參與者:管理員。異常流:①沒有輸入留言回復(fù)所有必填選項的信息,補(bǔ)充填寫。后置條件:管理員成功回復(fù)一條留言。參與者:管理員。②查看所有留言列表。后置條件:得到所有留言列表。參與者:管理員。基本流:①管理員對已存在新聞選擇“刪除”;②點擊確定,成功刪除新聞信息,并刷新頁面。前置條件:管理員必須成功登錄網(wǎng)站后臺管理頁面。(15)用況名:刪除新聞簡述:在所有新聞列表中選擇要刪除的某一條新聞信息,點擊刪除后將記錄從數(shù)據(jù)庫中刪除?;玖鳎孩俟芾韱T進(jìn)入發(fā)布新聞界面;②管理員輸入新聞的基本信息;③管理員點擊提交信息,完成新聞發(fā)布。前置條件:管理員必須成功登錄網(wǎng)站后臺管理頁面。(14)用況名:發(fā)布新聞簡述:管理員填寫新聞的編號、標(biāo)題、內(nèi)容等信息,生成一條新聞?;玖鳎孩俟芾韱T點擊“新聞管理”進(jìn)入新聞管理頁面。前置條件:管理員必須成功登錄網(wǎng)站后臺管理頁面。(13)用況名:查看新聞簡述:點擊查看新聞后顯示新聞編號、標(biāo)題、內(nèi)容等信息。后置條件:在訂單列表中成功刪除某條訂單信息。參與者:管理員?;玖鳎孩俟芾韱T對已有訂單選擇“修改”;②重新編輯訂單信息;③點擊修改,成功修改原有訂單信息。前置條件:管理員必須成功登錄網(wǎng)站后臺管理頁面。(11)用況名:修改訂單簡述:修改已有訂單的部分信息。基本流:①管理員點擊“訂單管理”進(jìn)入訂單管理頁面。前置條件:管理員必須成功登錄網(wǎng)站后臺管理頁面。(10)用況名:查詢已處理訂單簡述:點擊查詢后顯示已處理訂單的編號、會員編號、自行車編號、數(shù)量、取車門店、還車門店等訂單信息?;玖鳎孩俟芾韱T點擊“訂單管理”進(jìn)入訂單管理頁面。前置條件:管理員必須成功登錄網(wǎng)站后臺管理頁面。(9)用況名:查詢新訂單簡述:點擊查詢后顯示新訂單的編號、會員編號、自行車編號、數(shù)量、取車時間、租用天數(shù)、取車門店、還車門店等訂單信息。后置條件:在車輛列表中成功刪除某條車輛信息并刷新頁面。參與者:管理員。異常流:①沒有輸入車輛添加所有必填選項的信息,補(bǔ)充填寫。后置條件:管理員成功添加一條車輛記錄。參與者:管理員。②點擊查看所有未出租車輛列表。后置條件:得到所有未出租車輛列表。參與者:管理員。②點擊查看所有已出租車輛列表。后置條件:得到所有已出租車輛列表。參與者:管理員。基本流:①管理員對已存在會員選擇“刪除”;②點擊確定,成功刪除會員信息,并刷新頁面。前置條件:管理員必須成功登錄網(wǎng)站后臺管理頁面。(4)用況名:刪除會員簡述:在會員中選擇要刪除的會員信息,點擊刪除后把記錄從數(shù)據(jù)庫中刪除?;玖鳎孩俟芾韱T進(jìn)入會員添加界面;②管理員輸入會員的基本信息;③管理員點擊提交信息,完成會員添加。前置條件:管理員必須成功登錄網(wǎng)站后臺管理頁面。(3)用況名:添加會員簡述:管理員填寫會員的賬號、密碼、姓名、性別、身份證號、住址、聯(lián)系方式、郵箱等基本信息,生成一條新的會員記錄。后置條件:得到所有會員信息列表。參與者:管理員。異常流:①管理員賬號、密碼輸入錯誤無法登錄網(wǎng)站,需要重新輸入登錄;②管理員密碼丟失,重新獲取密碼再進(jìn)行登錄。后置條件:管理員進(jìn)入網(wǎng)站后臺操作界面。參與者:管理員。管理員功能用況圖如圖1所示。 功能需求分析 管理員功能需求分析管理員的功能需求主要分為登錄管理、會員管理、車輛管理、訂單管理、新聞管理、留言管理等六大功能模塊。首先,網(wǎng)站管理操作簡單,容易掌握;其次,企業(yè)整體的業(yè)務(wù)流程較為簡單,功能的應(yīng)用也相對精簡;最后,網(wǎng)站操作對工作人員的技術(shù)要求低,以現(xiàn)有人員的基礎(chǔ)素質(zhì)及業(yè)務(wù)水平來看,完全可以解決網(wǎng)站的運營管理問題。本網(wǎng)站的開發(fā)成本較低,開發(fā)所需的各項支出費用都在合理范圍之內(nèi),不會給企業(yè)帶來經(jīng)濟(jì)上的壓力;同時,網(wǎng)站實施后可以顯著提高工作效率以及節(jié)約運營成本,并且有助于企業(yè)完全實現(xiàn)信息化管理。從技術(shù)層面看,進(jìn)行網(wǎng)站開發(fā)所使用的開發(fā)技術(shù),如JSP、JavaScript、SSH框架、SQL Server等,都是常見并且是相當(dāng)成熟的技術(shù),開發(fā)人員可熟練運用;從軟硬件設(shè)備層面看,網(wǎng)站開發(fā)用到的軟硬件有myeclipse軟件、SQL Server2005數(shù)據(jù)庫、TomCat服務(wù)器、windows XP系統(tǒng)等,這些軟硬件設(shè)備對開發(fā)人員的技術(shù)水平要求低,開發(fā)人員對其可熟練掌握。本網(wǎng)站的可行性分析主要包括技術(shù)可行性分析、經(jīng)濟(jì)可行性分析和管理可行性分析等3個方面的內(nèi)容。在開發(fā)過程中靈活選用UML提供的各種圖和模型,可以加速開發(fā)進(jìn)程,提高代碼質(zhì)量,支持業(yè)務(wù)變更需求,這正是對一個大型、復(fù)雜的軟件系統(tǒng)完整開發(fā)所必需的系統(tǒng)架構(gòu)(沙赫,2006)。它記錄了對必須構(gòu)造的系統(tǒng)的決定和理解,可用于對系統(tǒng)的理解、設(shè)計、瀏覽、配置、維護(hù)和信息控制。它是隨著面向?qū)ο蟮陌l(fā)展建立起來的語言標(biāo)準(zhǔn)工具,在系統(tǒng)建模過程中有著廣泛的應(yīng)用。(3)提高開發(fā)人員的生產(chǎn)效率SQL Server 2005將提供更加強(qiáng)大的開發(fā)工具和各類新的開發(fā)特性,在大大提高開發(fā)效率的同時,將進(jìn)一步拓展您的應(yīng)用空間,帶來新的商業(yè)應(yīng)用機(jī)遇。SQL Server2005主要在以下三個方面為我們提供強(qiáng)大的功能:(1)安全、可靠、高效的企業(yè)級數(shù)據(jù)管理SQL Server 2005在安全性、高可靠性、性能、擴(kuò)展性、可管理性方面有極大的提高,不僅能夠確保企業(yè)級數(shù)據(jù)業(yè)務(wù)的實時穩(wěn)定運行、還能夠大大提高管理效率、降低操作復(fù)雜度和運維成本。SQL Server2005是一個全面的數(shù)據(jù)庫平臺,使用集成的商業(yè)智能工具提供了企業(yè)級的數(shù)據(jù)管理,提供了強(qiáng)大的數(shù)據(jù)訪問功能以及高速的數(shù)據(jù)處理。因此JSP同樣繼承了Java技術(shù)的簡單、便利、面向?qū)ο?、跨平臺和安全可靠等優(yōu)點,比起其他服務(wù)器腳本語言,JSP更加簡單、迅速和有力。JSP是在Servlet的基礎(chǔ)上開發(fā)的技術(shù),它繼承了Java Servlet 的各項優(yōu)秀功能。JSP頁面中包含了各種特殊的JSP元素,通過這些元素可以訪問其他的動態(tài)內(nèi)容并將它們嵌入到頁面中。JSP頁面由傳統(tǒng)的HTML(Hyper Text Markup Language)代碼和嵌入到其中的Java代碼組成。JSP是運行在服務(wù)器端的腳本語言之一,與其他的服務(wù)器端腳本語言一樣,是用來開發(fā)動態(tài)網(wǎng)頁的一種技術(shù)。它不但可以用于編寫客戶端的腳本程序,由Web瀏覽器解釋執(zhí)行,而且還可以編寫在服務(wù)器端執(zhí)行的腳本程序,在服務(wù)器端處理用戶提交的信息并動態(tài)地向瀏覽器返回處理結(jié)果,通常在JSP中應(yīng)用JavaScript編寫客戶端腳本程序。Hibernate內(nèi)部封裝了通過JDBC(Java Data Base Connectivity)訪問數(shù)據(jù)庫的操作,向上層應(yīng)用提供了面向?qū)ο蟮臄?shù)據(jù)訪問API(. Dai,2010)。Hibernate管理Java到數(shù)據(jù)庫的映射,還提供了數(shù)據(jù)查詢和存取的方法,大幅度減少了開發(fā)者的數(shù)據(jù)持久化相關(guān)的編程任務(wù)(陳宗嬌,2006)。面向切面——Spring提供了面向切面編程的豐富支持,它允許通過分離應(yīng)用的業(yè)務(wù)邏輯與系統(tǒng)級服務(wù)和事務(wù)進(jìn)行內(nèi)聚性的開發(fā)。反轉(zhuǎn)控