汽車服務管理系統畢業(yè)設計_第1頁
已閱讀1頁,還剩39頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、<p>  名車坊汽車服務管理系統</p><p>  [摘要] 隨著計算機的普及和計算機科學技術的飛速發(fā)展,人們開始越來越多地利用計算機解決實際問題。汽車服務管理系統是現代企業(yè)信息管理的重要部分之一,面對大量的汽車百貨零件信息、汽車裝飾、汽車美容、汽車保養(yǎng)以及員工的工資績效管理等,采用傳統的紙張?zhí)幚硇畔⒗速M大量的時間、人力和物力,且數據的準確性低。因此,開發(fā)一個界面友好,易于操作的汽車服務管理系統軟

2、件進行自動化處理變得十分重要,這正是本系統開發(fā)的目的和意義。</p><p>  作為動態(tài)頁面的實現,JSP技術已經形成了一整套獨有的理論。JSP是Microsoft提出的一種網絡服務器端編程環(huán)境。JSP已經成為開發(fā)動態(tài)網站的重要而快速、有效的工具。JSP強大的功能使之成為一種優(yōu)秀的服務器技術。隨著網絡技術的日益成熟,JSP技術在網絡編程中也變得越來越重要。所以,在在本次畢業(yè)設計中采用了JSP作為開發(fā)工具,構建了

3、一個能實現簡單的小型管理系統——名車坊汽車服務管理系統。本系統采用Myeclipse7.0和JDK Version1.6開發(fā)工具,它提供的各種內部及外部控件,可以幫助我們設計出功能強大,頁面有好的管理系統;服務器選擇Tomcat6.0版本。另外在本次設計中,選擇MySQL作為后臺數據庫, 由于它本身通過一個高度優(yōu)化類庫實現SQL函數庫,使得查詢速度快而且查詢初始化之后沒有任何內存分配,使得開發(fā)系統更加的方便。</p>&l

4、t;p>  本論文針對該系統的各個方面,對開發(fā)過程中涉及到的技術和工具都分別進行了闡述。系統功能主要包括以下方面:人員信息管理、汽車百貨信息管理、汽車裝飾管理、汽車美容管理、汽車保養(yǎng)管理以及人員工資報表等。</p><p>  [關鍵詞] JSP技術;汽車服務;管理系統</p><p>  Square Cars Car Service Management System</p

5、><p>  [Abstract]With the proliferation of computers and the rapid development of computer science and technology, more and more people began using computers to solve practical problems. Automotive Service Mana

6、gement System is a modern enterprise information management an important part of the face of a large number of vehicles department stores part information, car decoration, car, vehicle maintenance and performance managem

7、ent, staff wages, the use of traditional paper processing of information will</p><p>  As the realization of dynamic pages, JSP technology has formed a set of unique theory. JSP is Microsoft proposed a netwo

8、rk server-side programming environment. JSP has become an important and dynamic website development fast and effective tool. JSP powerful features make it an excellent server technology. With the increasing maturity of n

9、etwork technology, JSP technology in network programming has become increasingly important. Therefore, in this graduation project using JSP as a development too</p><p>  This thesis focuses on various aspect

10、s of the system, involved in the process of developing the technology and tools are described. System functions include the following areas: information management, information management department car, automobile decor

11、ation management, car management, vehicle maintenance management and staff salaries reporting.</p><p>  [Keywords] JSP Technology Automotive Service Management System</p><p><b>  目 錄<

12、/b></p><p><b>  1 緒論1</b></p><p><b>  1.1課題意義1</b></p><p><b>  1.2課題目的1</b></p><p>  1.2.1系統目標設計1</p><p>  1.2.

13、2系統功能要求2</p><p>  2開發(fā)工具和環(huán)境介紹3</p><p>  2.1 JSP簡介3</p><p>  2.2 JavaScript簡介4</p><p>  2.3 jQuery簡介4</p><p>  2.4系統數據庫介紹4</p><p>  2.4.1數

14、據庫的概念4</p><p>  2.4.2MySQL簡介5</p><p><b>  2.5開發(fā)環(huán)境6</b></p><p><b>  3需求分析7</b></p><p><b>  3.1設計背景7</b></p><p><

15、b>  3.2用戶需求7</b></p><p>  3.3系統架構的選擇8</p><p>  3.4邏輯結構10</p><p>  3.5物理結構10</p><p>  3.6概念結構設計11</p><p><b>  4數據庫設計13</b></p&

16、gt;<p>  4.1 數據庫實體關系圖設計13</p><p>  4.2 數據庫邏輯結構設計16</p><p>  4.3 數據字典17</p><p>  4.3.1 數據項17</p><p>  4.3.2數據結構19</p><p>  4.3.3數據流20</p>

17、<p>  4.3.4數據存儲20</p><p>  4.3.5處理過程21</p><p><b>  5詳細設計22</b></p><p>  5.1 劃分功能模塊22</p><p>  5.2 系統的基本流程23</p><p>  5.3 程序流程圖24&l

18、t;/p><p>  5.4操作數據庫的實現25</p><p>  5.4.1連接池的工作原理25</p><p>  5.4.2操作數據庫的代碼實現25</p><p>  5.4.2數據庫連接的關閉26</p><p>  5.5 系統實現27</p><p>  6系統測試與維護

19、29</p><p>  6.1系統測試方法29</p><p>  6.2系統維護30</p><p><b>  7結束語33</b></p><p><b>  致 謝34</b></p><p><b>  參考文獻 35</b><

20、;/p><p><b>  1 緒論</b></p><p><b>  1.1課題意義 </b></p><p>  從汽車美容概念進中國市場到現在已經有十幾年的時間了,汽車美容方式的不斷升級及美容服務的“星級化”告訴業(yè)內人士,汽車美容行業(yè)已經正式走了成熟發(fā)展時期。的確,中國有龐大的汽車市場,是汽車美容市場火爆的可靠保障

21、??春眠@個市場的商家紛紛向行業(yè)進軍,一時之間汽車美容店遍地開花,汽車美容連鎖也成了行業(yè)熱門話題。</p><p>  汽車服務行業(yè)的確是“黃金產業(yè)”,主要是因為該行業(yè)屬于社會經濟發(fā)展的產物,是隨著汽車保有量的增加而自然形成的新興行業(yè),她具有技術含量高和專業(yè)人才匱乏的現實發(fā)展特點,屬于“先發(fā)展先受益”的行業(yè)。初步形成一定的行業(yè)規(guī)范,但總體來說我國的汽車后服務市場剛剛開始,從服務模式和發(fā)展模式等方面的行業(yè)特征還不夠穩(wěn)

22、定,今后幾年之內必然要進行一輪殘酷的競爭,重新洗牌的結果是真正意義上的規(guī)范經營的汽車美容裝飾養(yǎng)護服務業(yè)的開始。</p><p>  但是我國的管理信息化水平還處在初級階段,主要表現在對信息的交互、人力物力的管理以及信息的大力推廣等方面,而面對龐大的信息量, 這時的人工管理幾乎無法實現,在這種情況下用數據庫進行管理變的尤為必要,這可以發(fā)揮計算機的優(yōu)勢,就需要有汽車服務管理系統來提高汽車服務管理工作的效率.通過這樣的

23、系統,可以做到信息的規(guī)范管理,科學統計和快速的查詢,從而減少管理方面的工作量和減少人為的錯誤。</p><p><b>  1.2課題目的</b></p><p>  1.2.1系統目標設計</p><p>  使得汽車服務管理工作更加清晰、條理化、自動化。</p><p>  很容易地完成對汽車日常裝飾、美容、保養(yǎng)、修

24、理等有關的各類數據進行輸入、修改于查詢等。</p><p>  不同的用戶具有不同的權限,對各類信息實現不同的操作</p><p>  對汽車零件實現了模糊查詢,提供對職工信息和工資報表的信息維護,并且本系統各模塊之間彼此聯系,緊密結合在一起。</p><p>  系統設計界面友好、操作方便、并能夠實現數據操作,從而保證數據庫信息的一致性。</p>&

25、lt;p>  1.2.2系統功能要求</p><p>  名車坊汽車服務管理系統</p><p>  本系統提供查詢零件信息、日常交易維護、職工信息管理、統計報表查看等幾個功能模塊。</p><p>  系統各個模塊都有著較為完善和細致的功能,用于滿足不同用戶的需求,同時它們之間彼此聯系,有機結合在一起。</p><p>  本系統界面

26、友好、易于操作。</p><p>  對系統數據庫的數據及時更新,保持數據一致性。</p><p>  由于數據庫內的信息會很多,注意數據庫表格設計,使得用戶易于操作。</p><p>  2開發(fā)工具和環(huán)境介紹 </p><p><b>  2.1 JSP簡介</b></p><p>  JSP

27、(Java Server Pages)技術使用Java編程語言編寫類XML的tags和scriptlets,來封裝產生動態(tài)網頁的處理邏輯。網頁還能通過tags和scriptlets訪問存在于服務端的資源的應用邏輯。JSP將網頁邏輯與網頁設計和顯示分離,支持可重用的基于組件的設計,使基于Web的應用程序的開發(fā)變得迅速和容易[6]。</p><p>  Web服務器在遇到訪問JSP網頁的請求時,首先執(zhí)行其中的程序段,

28、然后將執(zhí)行結果連同JSP文件中的HTML代碼一起返回給客戶。插入的Java程序段可以操作數據庫,重新定向網頁等,以實現建立動態(tài)網頁所需要的功能。JSP與Java Servlet一樣,是在服務器端執(zhí)行的,通常返回給客戶端的就是一個HTML文本,因此客戶端只要有瀏覽器就能夠瀏覽[1]。</p><p><b>  JSP內置對象:</b></p><p>  reques

29、t對象:該對象封裝了用戶提交的信息,通過調用該對象相應的方法可以獲取封裝的信息,即使用該對象可以獲取用戶提交信息,它是ServletRequest的一個實例。</p><p>  response對象:網頁傳回給用戶端的回應,response對象主要將JSP處理數據后的結果傳回到客戶端,其作用域是它所在的頁面。常用的方法sendRedirect()是重新定向客戶端的請求。</p><p>

30、  session對象:為發(fā)送請求的客戶端建立會話,并只對HTTP請求有效,session對象表示目前個別用戶的會話狀況,用此項機制可以輕易識別每一個用戶,然后對每一個別用戶的要求,給予正確的響應。session對象也可以存儲獲取的用戶相關的數據。</p><p>  application對象:是JSP引擎正在執(zhí)行的內容。有些時候服務器需要維護全局的一些數據在服務器工作的期間,application對象能夠起到

31、保存信息的作用。application的兩個主要方法setAttribute和getAttribute分別用來存儲一個變兩個和讀取一個變量。</p><p>  out對象:用來輸出各種類型的數據流。</p><p>  page對象:對應this關鍵字。JSP網頁本身,page對象是當前頁面轉換后的Servlet類的實例。從轉換后的Servlet類的代碼中,可以看到這種關系:Object

32、 page = this;在JSP頁面中,很少使用page對象。</p><p>  config對象:代表該JSP的配置信息,該對象更多地在Servlet中有效。</p><p>  exception對象:該對象代表其他頁面中的異常和錯誤。</p><p>  pageContext對象:該對象代表該JSP頁面上下文,使用該對象可以訪問頁面中的共享數據。<

33、/p><p>  2.2 JavaScript簡介</p><p>  Javascript是一種由Netscape的LiveScript發(fā)展而來的原型化繼承的面向對象的動態(tài)類型的區(qū)分大小寫的客戶端腳本語言,主要目的是為了解決服務器端語言,比如Perl,遺留的速度問題,為客戶提供更流暢的瀏覽效果。當時服務端需要對數據進行驗證,由于網絡速度相當緩慢,只有28.8kbps,驗證步驟浪費的時間太多。

34、于是Netscape的瀏覽器Navigator加入了Javascript,提供了數據驗證的基本功能。</p><p>  JavaScript的一個重要功能就是面向對象的功能,通過基于對象的程序設計,可以用更直觀、模塊化和可重復使用的方式進行程序開發(fā)[2]。</p><p>  一組包含數據的屬性和對屬性中包含數據進行操作的方法,稱為對象。比如要設定網頁的背景顏色,所針對的對象就是docu

35、ment,所用的屬性名是bgcolor,如document.bgcolor="blue",就是表示使背景的顏色為藍色。</p><p>  2.3 jQuery簡介</p><p>  Jquery是繼prototype之后又一個優(yōu)秀的Javascrīpt框架。它是輕量級的js庫(壓縮后只有21k) ,它兼容CSS3,還兼容各種瀏覽器 (IE 6.0+, FF 1.5+

36、, Safari 2.0+, Opera 9.0+)。jQuery使用戶能更方便地處理HTML documents、events、實現動畫效果,并且方便地為網站提供AJAX交互[9]。jQuery還有一個比較大的優(yōu)勢是,它的文檔說明很全,而且各種應用也說得很詳細,同時還有許多成熟的插件可供選擇。jQuery能夠使用戶的html頁保持代碼和html內容分離,也就是說,不用再在html里面插入一堆js來調用命令了,只需定義id即可。<

37、/p><p>  2.4系統數據庫介紹</p><p>  2.4.1數據庫的概念</p><p>  數據庫是以數據(數據就是對客觀事物的符號表示,是存儲在計算機中的模擬客觀事物的一系列信息。對于計算機科學而言,數據的含義極為廣泛,凡是可存儲的信息,如文本、圖象、聲音等都可以通過二進制編碼而形成數據)為對象,指為了滿足某種特定應用的需要,按照一定的數據模型在計算機系統

38、中組織、存儲和使用數據的數據集合。數據庫系統是管理大量的、持久的、可靠的和共享的數據的工具。</p><p><b>  數據庫有以下特點:</b></p><p>  (1)集成性:數據有兩層含義,一個是數據本身,一個是數據之間的關系。集成就是指把數據集中到一起來,按照一定的結構形式進行存儲,并通過一系列的機制約束數據 之間的關系,避免數據重復或不合要求。</

39、p><p>  (2)量大性:數據庫中存放的數據量一般都比較龐大,不能同時在內存中全部調用,而只能通過外部存儲器存儲,通常使用大容量的可移動磁盤或硬盤等設備。</p><p>  (3)共享性:指多個不同的用戶,為了不同的目的,可以使用不同的語言,通過不同的方式,訪問同一個數據庫,而訪問的范圍、可執(zhí)行的操作會有所區(qū)別。數據庫系統會提供相應的機制,保證這種共享在有序的條件下進行,可以避免因為同步

40、而造成的錯誤。</p><p>  (4)持久性:一般來說,數據庫中是數據都需要長期保存。</p><p>  2.4.2MySQL簡介</p><p>  在Java編程中通常要與數據庫打交道,對于數據量較小的應用,一般選用MySQL作為數據庫,因為MySQL數據庫比較簡單,功能也比較齊全,數據的備份、拷貝都很方便,且程序發(fā)布時不需要額外單獨安裝其它的數據庫管理軟

41、件[5]。因此,在功能夠滿足要求的條件下,MySQL數據庫往往成為一些小型數據庫軟件的首選。</p><p>  而本系統使用的正是MySQL數據庫。MySQL數據庫經過多年的發(fā)展,技術已經相當成熟。使用這種成熟的數據庫技術,有利于數據庫的使用和維護,節(jié)約開發(fā)成本。MySQL數據庫和其他數據庫相比也有很大的優(yōu)勢,它有四大優(yōu)點:</p><p><b>  (1)優(yōu)化 <

42、/b></p><p>  對于MySQL的優(yōu)化,我們可以說,主要的問題在于你的硬件條件,而非MySQL本身。不過對于Access,(以及其他桌面數據庫軟件)事情就不是這樣了。沒錯,MicrosoftJetDatabase的確實有效率,不過它還不是最快的。如果你的數據庫設計得非常差,你的網站還是會受到影響而速度變慢的。數據庫結構設計也會影響到MySQL,例如,MySQL并不支持外鍵(foreignkey)。

43、這個缺點會影響到你的數據庫設計以及網站的效率。對于使用MySQL做數據庫的網站,你應該注意的是,如何讓硬盤存取IO減少到最低值、如何讓一個或多個CPU隨時保持在高速作業(yè)的狀態(tài)、以及適當的網絡帶寬,而非實際上的數據庫設計以及資料查詢語句。事實上,有些網站開發(fā)者將MySQL稱為目前市面上跑得最快的數據庫。</p><p><b>  (2)備份 </b></p><p&

44、gt;  如果你曾經有過搶救一個損壞的MDB檔案的慘痛經驗,那么你會對MySQL表示非常激賞。這是MySQL另一個勝過Access的地方。首先,mysqldump會產生一個比Access好很多而且也更可靠的備份檔案。相比之下,在Access中你只是將一個MDB檔拷貝起來做備份。其次,即使MySQL的備份有部分損壞,復原起來也要比一個損壞的MDB檔要容易得多了。</p><p>  (3)可延伸性及資料處理能力

45、</p><p>  句登山者的話來說,將Access數據庫來跟MySQL相比,簡直就是像把印第安那的小山丘拿來跟科羅拉多洛磯山脈的Pike'sPeak頂相比較。事實就是這么簡單∶MySQL可以處理的檔案比Access所能處理的檔案大很多。如果你硬將Access數據庫弄到100MB的MDB檔案時,你要準備好一個字典厚的紀錄本來記錄來自客戶對于網站效率低下的抱怨。而類似的數據庫在MySQL上面跑,就不會發(fā)生

46、承載過重的跡象。</p><p>  (4)多樣性 </p><p>  MySQL同時提供高度多樣性,能夠提供很多不同的使用者介面,包括命令行客戶端操作,網頁瀏覽器,以及各式各樣的程序語言介面,例如C+,Perl,Java,PHP,以及Python。你可以使用事先包裝好的客戶端,或者干脆自己寫一個合適的應用程序。MySQL可用于Unix,Windows,以及OS/2等平臺,因此它可

47、以用在個人電腦或者是服務器上。</p><p><b>  2.5開發(fā)環(huán)境</b></p><p>  名車坊汽車服務管理系統的開發(fā)與運行環(huán)境如下:</p><p>  開發(fā)環(huán)境:Windows XP</p><p>  開發(fā)工具:Myeclipse7.0、JDK Version1.6</p><p&

48、gt;  數據庫管理系統:MySQL</p><p>  服務器:Tomcat6.0</p><p>  運行環(huán)境:Windows 2000/XP/2003</p><p><b>  3需求分析</b></p><p><b>  3.1設計背景</b></p><p> 

49、 進行數據庫設計首先必須準確了解和分析用戶需求(包括數據和處理)。目的是為名車坊汽車服務管理數據庫系統的設計打下牢牢的基礎,是數據庫開發(fā)的重要文件依據,主要為數據庫設計人員使用,是用戶和系統分析員的項目依據文件。作為“地基”的需求分析是否做得充分與準確,它決定了在其上構建數據庫大廈的速度和質量。需求分析做得不好,甚至會導致整個數據庫設計返工重做。</p><p>  本系統的開發(fā)是設計一個名車坊汽車服務管理系統。

50、</p><p><b>  3.2用戶需求</b></p><p>  本系統是針對企業(yè)的汽車服務管理系統,因此名車坊汽車服務管理系統的用戶包括經理和普通員工。主要涉及管理汽車百貨、汽車裝飾、美容項目、保養(yǎng)項目、業(yè)務信息、工資業(yè)績、銷售圖形分析等多種數據信息。</p><p>  實現的具體功能如下:</p><p>

51、  管理汽車百貨——經理負責對各種零件信息的查詢、錄入、修改、刪除等操作。</p><p>  管理汽車裝飾——經理負責對汽車裝飾信息的查詢、錄入、修改、刪除等操作。</p><p>  管理美容項目——經理負責對汽車美容信息的查詢、錄入、修改、刪除等操作。</p><p>  管理保養(yǎng)項目——經理負責對汽車保養(yǎng)信息的查詢、錄入、修改、刪除等操作。</p>

52、;<p>  管理業(yè)務信息——經理和普通員工均可以對管理業(yè)務信息進行查詢、錄入、修改、刪除等操作。</p><p>  工資業(yè)績信息——經理和普通員工都有權限查看每個人的工資信息,每個職工的工資均采用基本工資加提成的算法得出最終結果</p><p>  銷售圖形分析——經理和普通員工都有權限查看企業(yè)所有職工的銷售總額。</p><p>  系統用戶管理

53、——系統管理員負責用不同的權限來限制不同用戶對系統的使用。</p><p>  以上是用戶對系統的基本的功能要求,此外用戶還要求系統的效率要高,查詢速度要快,比較小的冗余,易維護,具有較高的數據安全性。</p><p>  3.3系統架構的選擇</p><p>  通過系統分析,本系統采用MVC架構,MVC架構是"Model-View-Controller

54、"的縮寫,中文翻譯為"模型-視圖-控制器"。MVC應用程序總是由這三個部分組成。Event(事件)導致Controller改變Model或View,或者同時改變兩者。只要Controller改變了Models的數據或者屬性,所有依賴的View都會自動更新。類似的,只要Controller改變了View,View會從潛在的Model中獲取數據來刷新自己?!VC架構是一個復雜的架構,其實現也顯得非常復雜。但是

55、,我們已經總結出了很多可靠的設計模式,多種設計模式結合在一起,使MVC架構的實現變得相對簡單易行。Views的實現顯然可以用JSP來實現Controller控制Views的顯示,可以用Servlet實現[4]。Model通常是一個調停者,可采用JavaBean來實現[8]。 </p><p>  MVC與J2EE[7]架構的對應關系是:View處于Web Tier或者說是Client Tier,通常是JSP/Se

56、rvlet,即頁面顯示部分。Controller也處于Web Tier,通常用Servlet來實現,即頁面顯示的邏輯部分實現。Model處于Middle Tier,通常用服務端的JavaBean[1]或者EJB實現,即業(yè)務邏輯部分的實現。</p><p>  視圖是模型的表示,它提供用戶交互界面。使用多個包含單顯示頁面的用戶部件,復雜的Web頁面可以展示來自多個數據源的內容,并且網頁人員,美工能獨自參與這些Web

57、頁面的開發(fā)和維護。</p><p>  視圖部分大致處理流程如下:首先,頁面模板定義了頁面的布局;頁面配置文件定義視圖標簽的具體內容(用戶部件);然后,由頁面布局策略類初始化并加載頁面;每個用戶部件根據它自己的配置進行初始化,加載校驗器并設置參數,以及事件的委托等;用戶提交后,通過了表示層的校驗,用戶部件把數據自動提交給業(yè)務實體即模型。</p><p>  用控制器提供一個控制和處理請求的

58、集中入口點,它負責接收、截取并處理用戶請求;并將請求委托給分發(fā)者類,根據當前狀態(tài)和業(yè)務操作的結果決定向客戶呈現的視圖。在這一部分主要定義了HttpReqDispatcher(分發(fā)者類)、HttpCapture(請求捕獲者類)、Controller(控制器類)等,它們相互配合來完成控制器的功能。請求捕獲者類捕獲HTTP請求并轉發(fā)給控制器類??刂破黝愂窍到y中處理所有請求的最初入口點??刂破魍瓿梢恍┍匾奶幚砗蟀颜埱笪薪o分發(fā)者類;分發(fā)者類分

59、發(fā)者負責視圖的管理和導航,它管理將選擇哪個視圖提供給用戶,并提供給分發(fā)資源控制。在這一部分分別采用了分發(fā)者、策略、工廠方法、適配器等設計模式。</p><p>  選擇MVC架構[12]的優(yōu)點如下:</p><p>  大部分用過程語言比如ASP、PHP開發(fā)出來的Web應用,初始的開發(fā)模板就是混合層的數據編程。例如,直接向數據庫發(fā)送請求并用HTML顯示,開發(fā)速度往往比較快,但由于數據頁面的

60、分離不是很直接,因而很難體現出業(yè)務模型的樣子或者模型的重用性。</p><p>  由于一個應用被分離為三層,因此有時改變其中的一層就能滿足應用的改變。一個應用的業(yè)務流程或者業(yè)務規(guī)則的改變只需改動MVC的模型層。 </p><p>  控制層的概念也很有效,由于它把不同的模型和不同的視圖組合在一起完成不同的請求,因此,控制層可以說是包含了用戶請求權限的概念。 </p><

61、;p>  另外,它還有利于軟件工程化管理[3]。由于不同的層各司其職,每一層不同的應用具有某些相同的特征,有利于通過工程化、工具化產生管理程序代碼。</p><p>  因此該系統采用MVC架構。</p><p><b>  3.4邏輯結構</b></p><p>  名車坊汽車服務管理系統的特點就是利用Browser/Server(B/

62、S)結構[11],提供了一個企業(yè)簡單的管理系統,讓企業(yè)的管理更加科學、現代化。系統的優(yōu)勢在于系統簡單、功能強大、擴展能力良好等性能。系統的網絡應用原理示意圖如圖3-1所示:</p><p>  圖3-1 系統網絡應用原理圖</p><p><b>  3.5物理結構</b></p><p>  系統實現的物理結構如圖3-2所示:</p&g

63、t;<p>  圖3-2 系統物理結構圖</p><p>  概念結構設計是整個數據庫設計的關鍵,它通過對用戶需求進行綜合、歸納與抽象,形成獨立于具體DBMS的概念模型。</p><p><b>  3.6概念結構設計</b></p><p>  概念結構設計是整個數據庫設計的關鍵,它通過對用戶需求進行綜合、歸納與抽象,形成獨立于

64、具體DBMS的概念模型。</p><p>  數據流圖表達了數據和處理的關系,根據用戶的需求分析和名車坊汽車服務管理系統的需求,得出如下圖3-3所示的名車坊汽車服務管理系統數據流圖。</p><p>  圖 3-3 名車坊汽車服務管理系統數據流圖</p><p>  系統的功能模塊設計圖如圖所示。</p><p>  圖3-4 系統功能模塊設

65、計圖 </p><p><b>  4數據庫設計</b></p><p>  設計數據庫是指對于一個給定的應用環(huán)境,包括硬件環(huán)境、操作系統、數據庫管理系統(DBMS)等軟件環(huán)境,可以使用這些個環(huán)境來表達用戶的要求,構造最優(yōu)秀的數據庫模式,建立數據庫及圍繞數據庫開展的應用系統,使之能夠有效地收集、存儲、操作和管理數據,滿足企業(yè)組織中各類用戶的應用需求。數據庫設計

66、的內容主要包括結構特性設計和行為特性設計。</p><p>  結構特性設計是指數據庫的邏輯結構特性,即確定數據庫的數據模型[10]。行為特性設計是指確定數據庫應用的行為和動作,并根據其行為特性設計出數據庫的子模式。在數據庫設計過程中,數據庫的結構特性設計起著關鍵作用,行為特性設計起著輔助作用。</p><p>  按照數據庫規(guī)范設計的方法,考慮數據庫及其應用系統開發(fā)全過程,將數據庫設計分

67、為六個階段:需求分析、概念結構設計、邏輯結構設計、物理結構設計、數據庫實施、數據庫運行和維護等步驟。下面將詳細介紹本次設計對于數據庫實體關系圖的設計以及數據庫邏輯結構的設計。</p><p>  4.1 數據庫實體關系圖設計 </p><p>  由于直接將現實世界按具體數據模型進行組織時必須同時考慮很多因素,設計工作非常復雜,并且效果也不很理想,因此需要一種方法能夠對現實世界的信息結構

68、進行描述。事實上這方面已經有了一些方法,就是實體—聯系(Entity—Relational)方法,即通常所說的E—R方法。這種方法由于簡單、實用,因此得到了廣泛的應用,也是目前描述信息結構最常用的方法。</p><p>  將需求分析得到的用戶需求抽象為信息結構及概念模型的過程是概念結構設計。為了描述數據庫結構的概念模式,這里將采用E—R圖來描述數據庫的實體關系。E—R圖不僅能夠描述兩個實體之間的聯系,而且還能描

69、述兩個以上實體之間的聯系。</p><p>  (1)用戶信息表中包含自動編號(主鍵)、用戶名、密碼、職工姓名、聯系電話、權限、基本工資、提成等字段。用戶信息實體關系圖如圖4-1所示。</p><p>  圖4-1 用戶信息實體關系圖</p><p>  (2)汽車服務信息表中包含自動編號(主鍵)、服務時間、車牌號、聯系電話、百貨名稱、百貨數量、裝飾名稱、裝飾數量、

70、美容名稱、保養(yǎng)名稱、總價格、所屬職工等字段。汽車服務信息實體關系圖如圖4-2所示。</p><p>  圖4-2 汽車服務基本信息實體關系圖</p><p>  (3)汽車百貨信息表中包含自動編號(主鍵)、百貨名稱、價格、百貨描述、數量等字段。汽車百貨信息實體關系圖如圖4-3所示。</p><p>  圖4-3 汽車百貨基本信息實體關系圖</p>

71、<p>  (4)汽車保養(yǎng)信息表中包含自動編號(主鍵)、保養(yǎng)名稱、價格、保養(yǎng)描述等字段。汽車保養(yǎng)信息實體關系圖如圖4-4所示。</p><p>  圖4-4 汽車保養(yǎng)基本信息實體關系圖</p><p>  (5)汽車美容信息表中包含自動編號(主鍵)、美容名稱、價格、美容描述等字段。汽車保養(yǎng)信息實體關系圖如圖4-4所示。</p><p>  圖4-5 汽

72、車美容基本信息實體關系圖</p><p>  (6)汽車裝飾信息表中包含自動編號(主鍵)、裝飾名稱、價格、裝飾描述、數量等字段。汽車裝飾信息實體關系圖如圖4-6所示。</p><p>  圖4-6 汽車裝飾基本信息實體關系圖</p><p>  4.2 數據庫邏輯結構設計</p><p>  邏輯結構設計的任務是把概念結構設計階段設計好的E

73、—R圖轉換成與選用的數據庫管理系統(DBMS)產品所支持的數據模型相符合的邏輯結構。</p><p>  E—R圖轉為關系數據庫模型所要解決的問題是如何將實體和實體間的聯系轉換成關系模式,如何確定這些關系模式的屬性和碼。</p><p>  在現實世界中,事物內部以及事物之間是有聯系的,這些聯系在信息世界反映為實體內部的聯系和實體之間的聯系。實體內部的聯系通常是指組成實體的各屬性之間的聯系

74、,實體之間的聯系通常是指不同實體之間的聯系。聯系是數據之間的關聯集合,是客觀存在的應用語義鏈。兩個實體型之間的聯系可以分為三類:</p><p>  數據中兩實體之間1:1聯系轉換為一端至多對應一端(也可以沒有)的關系模型,也可以說一端與另一端實體之間是一對一聯系。</p><p>  數據中兩實體間1:n聯系轉換為一個與n端對應的關系模式合并的關系模式的方法是將聯系的屬性與1端得碼加入n

75、端作為屬性,主碼為n端實體的主碼。</p><p>  數據中兩實體之間m:n轉為一實體中的每個實例,在另一實體中有(n>=0)與之聯系,而對此端實體中的每個實例,在另一實體中也有m個實例(m>=0)與之聯系,也可以說兩實體之間的關系是多對多的聯系。</p><p><b>  4.3 數據字典</b></p><p><b&

76、gt;  4.3.1 數據項</b></p><p>  數據字典是系統中各類數據描述的集合,是進行詳細的數據收集和數據分析所獲得的主要成果,數據字典是對系統所用到的所有表結構的描述,名車坊汽車服務管理系統的主要數據見下表。</p><p>  表 4.1 用戶基本信息表</p><p>  表 4.2 汽車百貨基本信息表</p><

77、p>  表 4.3 汽車保養(yǎng)基本信息表</p><p>  表 4.4 汽車服務基本信息表</p><p>  表 4.5 汽車美容基本信息表</p><p>  表4.6 汽車裝飾基本信息表</p><p><b>  4.3.2數據結構</b></p><p>  數據結構反映了數據之間

78、的組合關系。一個數據結構可以由若干個數據項組成,也可以由若干個數據結構組成,或若干個數據項和數據結構混合組成。經過數據項和用戶需求的分析,本系統數據結構具體如下表所示:</p><p>  表 4.7 數據結構表</p><p><b>  4.3.3數據流</b></p><p>  數據流是數據結構在系統內傳輸的路徑。通過對用戶的需求分析,

79、以及數據項和數據流的設計,得出了相應的數據流描述如下表所示:</p><p>  (1) 數據流定義表</p><p>  表 4.8 數據流定義表</p><p>  (2) 外部項定義表</p><p>  表 4.8 外部項定義表</p><p><b>  4.3.4數據存儲</b><

80、;/p><p>  數據存儲是數據結構停留或保存的地方,也是數據流的來源和去向之一。經過數據項、數據結構和數據流的設計,本系統一共選用了三個數據存儲,具體對數據存儲的描述通常如下表所示:</p><p>  表 4.9 數據存儲表</p><p><b>  4.3.5處理過程</b></p><p>  處理過程的具體處理

81、邏輯一般用判定表或判定樹來描述。對于本系統用于汽車服務管理一共設計了四種處理方法,具體處理方式如下表所示:</p><p>  表 4.10 數據處理過程表</p><p><b>  5詳細設計</b></p><p>  5.1 劃分功能模塊</p><p>  根據系統功能的需求分析和企業(yè)對汽車服務管理的特點,經過

82、模塊化的分析得到如下圖5-1所示的系統功能模塊結構圖。</p><p>  圖5-1 系統功能模塊結構圖</p><p>  5.2 系統的基本流程</p><p>  用戶首先進入登錄界面,系統根據用戶名和密碼判斷是否為合法用戶,如果不是則拒絕進入系統;如果用戶屬于合法用戶,則根據不同的權限將會進入系統的不同主界面。主界面的左邊是采用樹形做的系統的功能菜單,點擊對

83、應的按鈕,就會跳轉到相應的頁面。</p><p>  用戶登錄系統流程圖如下圖5-2所示。</p><p>  圖5-2 用戶登錄流程圖</p><p><b>  5.3 程序流程圖</b></p><p>  圖5-3 系統流程圖</p><p>  個人資料修改包括:經理可以對所有職工的基本

84、信息進行錄入、修改、刪除,其中查詢?yōu)槎鄺l件模糊查詢。普通職工只能對自己的基本信息進行修改。</p><p>  業(yè)務信息管理:經理可以通過多條件模糊查詢來查看所有職工的工作情況,而普通員工只能登錄時只能查看自己的業(yè)務信息。</p><p>  工資業(yè)績分析:經理和普通員工均可以查看某個工作階段期間所有職工的銷售額情況以及工資等,而所有職工的工資都是經過總銷售乘以提成再加上基本工資得出的。&

85、lt;/p><p>  銷售圖形分析:經理和普通員工均可以查看每個職工的銷售金額。該銷售額將以柱形圖顯示。</p><p>  汽車百貨信息、汽車裝飾管理、汽車美容項目、汽車保養(yǎng)項目等只有經理可以對其信息進行錄入、修改以及刪除等操作,并且可以多條件模糊查詢各自基本信息。</p><p>  5.4操作數據庫的實現</p><p>  5.4.1連

86、接池的工作原理</p><p>  數據庫連接分為直接連接和池連接。直連接是指直接通過在Java代碼中打開連接并維護,使用直連接的時候必須在完成對數據庫的操作后將連接關閉,否則,太多的將直接導致系統性能的下降,甚至超過數據庫服務器的連接限制,使得系統崩潰。</p><p>  池連接是被J2EE服務器打開和維護的,J2EE服務器啟動時會建立一定數量的池連接,具體的數量由配置參數決定。并一直

87、維持不少于此數目的池連接,程序中需要連接的時候,池驅動程序會返回一個未被使用的連接并標記為忙,如果當前沒有空閑的連接,池會新建一定數量的新連接,當程序使用完連接池,池驅動程序將此連接標記為空閑,這樣其他的調用又可以使用這個連接了。</p><p>  連接池的基本思想就是預先的建立一些連接放置于內存對象中以被使用。當程序中需要建立數據庫連接時,只需從內存中取一個來用而不用新建。同樣使用完畢后只需放回內存即可。而連

88、接的建立,斷開都由連接池本身來管理,通過連接池可以大大的提高程序的效率。本次《民車坊汽車服務管理系統》的開發(fā)在數據庫連接時選擇了池連接。</p><p>  5.4.2操作數據庫的代碼實現</p><p>  (1) 通過連接池連接數據庫,連接池連接數據庫的具體方法。</p><p>  public conn() {</p><p><

89、;b>  try {</b></p><p>  ctx = new InitialContext(); //實例化上下文對象</p><p>  ds = (DataSource) ctx.lookup("java:/comp/env/qc"); //通過JNDI找到數據源</p><p>  con

90、n = ds.getConnection(); //從數據源中取出一個空閑連接</p><p>  } catch (SQLException e) {</p><p>  System.out.println(e.getMessage());</p><p>  } catch (Exception e) {</p><

91、p>  System.out.println(e.getMessage());</p><p><b>  }</b></p><p><b>  }</b></p><p>  (2) 查詢數據庫公共方法的實現,具體實現方法如下。</p><p>  public ResultSet que

92、ry(String sql) {</p><p><b>  try {</b></p><p>  stmt = conn.prepareStatement(sql);</p><p>  rs = stmt.executeQuery();</p><p>  return rs;</p><p&g

93、t;<b>  }</b></p><p>  catch (Exception e) {</p><p>  System.out.println(e.getMessage());</p><p><b>  }</b></p><p>  return rs;</p><p&

94、gt;<b>  }</b></p><p>  (3) 添加、修改以及刪除數據庫信息公共方法的實現,具體實現方法如下。</p><p>  public int update(String sql) throws SQLException {</p><p><b>  try {</b></p><

95、p>  stmt = conn.prepareStatement(sql);</p><p>  return stmt.executeUpdate();</p><p>  } catch (Exception e) {</p><p>  System.out.println(e.getMessage());</p><p><

96、;b>  }</b></p><p><b>  return 0;</b></p><p><b>  }</b></p><p>  5.4.2數據庫連接的關閉</p><p>  數據庫連接是必須被關閉的,而關閉數據庫連接在直接連接和連接池中的意義是不同的。在直接連接中,數據

97、庫連接的關閉是真正意義上的關閉,而在連接池中的關閉實際上是把用過的數據庫連接重新放回連接池,等待在此被使用。數據庫連接的關閉具體方法的實現如下。</p><p>  public void close() throws Exception{</p><p>  if(rs != null) rs.close();</p><p>  if(stmt != nul

98、l) stmt.close();</p><p>  if(conn != null) conn.close();</p><p><b>  }</b></p><p><b>  5.5 系統實現</b></p><p>  系統登錄界面的實現如下圖所示:</p><p>

99、;  圖5-4 系統登陸界面</p><p>  當經理輸入的用戶名和密碼驗證合格時,系統將進入汽車服務主界面,如下圖所示:</p><p>  圖5-5 系統主界面</p><p>  用戶可以鼠標右鍵將顯示對信息的錄入、更新以及刪除等操作,當選擇添加信息時,將彈出一個添加框如下圖所示:</p><p>  圖5-6 業(yè)務添加頁面</

100、p><p>  用戶輸入用戶名和密碼檢驗正確時,可以進入主界面查看任何職工的銷售情況,如下圖所示:</p><p>  圖5-7 所有職工銷售情況圖</p><p><b>  6系統測試與維護</b></p><p><b>  6.1系統測試方法</b></p><p>  

101、在整個軟件生存期,確認、驗證、測試分別有其側重的階段。確認主要體現在計劃階段、需求分析階段,也會出現在測試階段;驗證主要體現在設計階段和編碼階段;測試主要體現在編碼階段。事實上,確認、驗證、測試是相輔相成的,確認無疑會產生驗證和測試的標準,而驗證和測試通常又會幫助完成一些確認,特別是在系統測試階段。因此,軟件測試貫穿于軟件定義和開發(fā)的整個過程。軟件開發(fā)過程中所產生的需求規(guī)格說明、概要設計規(guī)格說明、詳細設計規(guī)格說明以及源程序都是軟件測試的

102、對象。</p><p>  無論怎樣強調軟件測試的重要性和它對軟件可靠性的影響都不過分。在開發(fā)畢業(yè)設計這種工程型的設計時,面對著錯綜復雜的問題,主觀認識不可能完全符合客觀事實。因此,力求在系統測試時發(fā)現錯誤、糾正錯誤。因為:目前軟件測試仍然是保證軟件質量的關鍵步驟,它是對軟件規(guī)格說明、設計和編碼的最后復審。</p><p>  軟件測試按照不同的劃分方法,有不同的分類。按照程序是否執(zhí)行,可

103、以分為靜態(tài)測試和動態(tài)測試;按照測試用例的設計方法,可以分為白盒測試和黑盒測試;按照開發(fā)階段劃分,可分為單元測試、集成測試、確認測試、系統測試和驗收測試;按照測試實施組織劃分,可分為開發(fā)方測試、用戶測試和第三方測試;按照是否使用工具軟件,可以分為手工測試和自動測試。本次設計選擇測試用例的設計方法,采用黑盒測試和白盒測試相互結合的方法。</p><p>  測試的關鍵是測試用例的設計[13],對任何工程產品都可用兩種

104、方法對其進行測試:第一是基于產品的功能來規(guī)劃測試,檢查程序各功能是否實現,并檢查其中的錯誤,這種測試稱為黑盒測試。第二是基于產品的內部結構來規(guī)劃測試,檢查內部操作是否按規(guī)定執(zhí)行,各部分是否被充分利用,這種測試稱為白盒測試。一般來說,這兩類測試方法是從完全不同的起點出發(fā),兩類方法各有側重,各有優(yōu)缺點,構成互補關系,在測試的實踐中都是有效和實用的,在規(guī)劃測試時需要把黑盒測試和白盒測試結合起來。通常在進行單元測試時大都采用白盒測試,而在確認測

105、試或系統測試中大都采用黑盒測試。</p><p>  黑盒測試又稱功能測試、數據驅動測試或基于軟件需求規(guī)格說明書的測試,是一種從用戶觀點出發(fā)的測試。用這種方法進行測試時,把被測試程序當作一個黑盒,在不考慮程序內部結構和內部特性,測試者只知道該程序的輸入和輸出之間的關系或程序的功能的情況下,依靠能夠反映這一關系的軟件需求規(guī)格說明書,來確定測試用例和推斷測試結果的正確性。軟件的黑盒測試被用來證實軟件功能的正確性和可操

106、作性。</p><p>  黑盒測試主要根據軟件需求規(guī)格說明書設計測試用例,并不涉及程序的內部構造。它是一種傳統的測試方法,有嚴格的規(guī)定和系統的方式可供參考。應該說功能測試不僅能夠找到大多數其他測試方法無法發(fā)現的錯誤,而且是一些外購軟件、參數化軟件包以及某些生成的軟件的主要測試方法,由于無法得到源程序,用其他方法進行測試是完全無能為力的。</p><p>  白盒測試又稱結構測試、邏輯驅動

107、測試或基于程序的測試。它依賴于對程序細節(jié)的嚴密檢查,針對特定條件和與循環(huán)集設計測試用例,對軟件的邏輯路徑進行測試。在程序的不同點檢驗“程序的狀態(tài)”以判定其實際情況是否和預期的狀態(tài)相一致。白盒測試主要是根據被測試程序的內部結構設計測試用例。</p><p>  黑盒測試法把程序看成是一個黑盒子,完全不考慮程序的內部結構和處理過程,黑盒測試在程序接口進行測試,檢查程序功能是否按照要求規(guī)定正常使用,程序是否能適當地接受

108、輸入數據產生正確的輸出信息,并且保持外部信息的完整性;而白盒測試是先把程序看成是裝在一個透明的盒子里,我們完全了解程序的結構和功能。這種方法按照程序內部的邏輯測試程序,檢查程序中的每條通路是否能按照預定的要求正確工作。</p><p>  針對名車坊汽車服務管理系統,采用黑盒法和白盒法相結合的方法,根據程序的具體內容設計測試情況,并編制一些測試程序,上機運行,開展測試工作。</p><p>

109、;<b>  6.2系統維護</b></p><p>  系統維護是指軟件系統交付使用以后,為了改正軟件運行錯誤,或者因滿足新的需求而加入新功能的修改軟件的過程。要求進行維護的原因主要分為以下五種:</p><p>  1.在運行中發(fā)現在測試階段未能發(fā)現的潛在軟件錯誤和設計缺陷;</p><p>  2.根據實際情況,需要改進系統設計,以增強系

110、統的功能,提高系統的性能;</p><p>  3.要求在某環(huán)境下已運行的系統能適應特定的硬件、軟件、外部設備和通信設備等新的工作環(huán)境,或是要求適應已變動的數據或文件;</p><p>  4.為使投入運行的系統與其它相關的程序有良好的接口,以利于協同工作;</p><p>  5.為使運行系統的應用范圍得到必要的擴充。</p><p>  

111、對系統進行維護的目的是為了糾正軟件開發(fā)過程未發(fā)現的錯誤,增強,改進和完善軟件的功能和性能,以適應軟件的發(fā)展,延長軟件的壽命讓其創(chuàng)造更多的價值。</p><p>  根據以上目的可以把維護活動可以歸納為完善性維護、適應性維護、糾錯性維護和預防性維護四類:</p><p>  1.完善性維護:在系統漫長的使用過程中,為了滿足用戶使用過程中對系統提出的新的功能與性能要求,需要對原來的系統的功能進

112、行修改或擴充,這種擴充系統功能,增強系統性能,提高系統運行效率和可維護性而進行的維護活動稱為完善性維護。此維護活動工作量較大占整個維護工作的50%。例如:對黨員管理系統,在使用中要不斷修改黨員管理程序,使其增加或刪除新的項目,滿足新需求;原來系統的查詢響應速度較慢,要提高軟件的響應速度;改變原來系統的用戶界面或增加聯機幫助信息;為系統的運行增加監(jiān)控設施等。此項維護主要采用的策略可以使用功能強、使用方便的工具,采用原型化方法開發(fā)等。<

113、;/p><p>  2.適應性維護:適應性維護是為了適應計算機的飛速發(fā)展,使系統適應外部新的硬件和軟件環(huán)境或者數據環(huán)境(數據庫、數據格式、數據輸入/輸出方式、數據存儲介質)發(fā)生的變化,而進行修改系統的過程。例如:為現有的某個應用問題實現一個數據庫管理系統;對某個指定代碼進行修改,如:從3個字符改為4個字符;縮短系統的應答時間,使其達到特定的要求;修改兩個程序,使它們可以使用相同的記錄結構;修改程序,使其適用于另外的終

溫馨提示

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

評論

0/150

提交評論