2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩40頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、<p>  畢 業(yè) 設(shè) 計(jì)</p><p>  題 目: 體育用品庫存管理系統(tǒng)設(shè)計(jì) </p><p>  院、 系: ** 軟件工程系 </p><p>  姓 名: *** </p><p>  指導(dǎo)教師: *** &

2、lt;/p><p>  系 主 任: *** </p><p>  2013 年 6 月 22 日</p><p>  ??粕厴I(yè)設(shè)計(jì)(論文)任務(wù)書</p><p>  體育用品庫存管理系統(tǒng)設(shè)計(jì)</p><p><b>  摘要</b></p>&

3、lt;p>  本論文著重論述了庫存管理系統(tǒng)開發(fā)時的主要設(shè)計(jì)思想及系統(tǒng)實(shí)現(xiàn)的詳細(xì)過程及使用方法。介紹了庫存管理系統(tǒng)的主要功能。系統(tǒng)結(jié)構(gòu)嚴(yán)謹(jǐn)、性能穩(wěn)定、使用方便。它可以運(yùn)行Win98/2000 / NT/XP/2003系統(tǒng)。本系統(tǒng)為全中文界面,功能全,易操作。系統(tǒng)的操作方式、界面均為Win98風(fēng)格。系統(tǒng)中具有強(qiáng)大的操作員權(quán)限、密碼管理等功能模塊,確保系統(tǒng)運(yùn)行安全。強(qiáng)大的查詢和報(bào)表功能,全面、及時地反映當(dāng)前庫存狀況。</p>

4、<p>  本論文采用了面向?qū)ο箝_發(fā)的設(shè)計(jì)方法。在WindowsXP操作系統(tǒng)環(huán)境下,應(yīng)用MySQL數(shù)據(jù)庫以及Java可視化程序設(shè)計(jì)軟件所開發(fā)的庫存管理系統(tǒng)。</p><p>  本系統(tǒng)對于庫存管理方面所遇到的各種問題,如工作量大,數(shù)據(jù)更新不及時,可靠性低等都做出詳細(xì)的解決方案,本系統(tǒng)是以適應(yīng)當(dāng)前計(jì)算機(jī)信息管理的需要,緊密結(jié)合了庫存管理在計(jì)算機(jī)信息管理方面的應(yīng)用,實(shí)現(xiàn)了管理人員對庫存的現(xiàn)代化管理,從而

5、進(jìn)一步提高了庫存管理的工作效率。</p><p>  關(guān)鍵詞 庫存管理;數(shù)據(jù)庫;Java</p><p>  Design of goods inventory management system of sports</p><p><b>  Abstract</b></p><p>  This paper focu

6、ses on the development of the inventory management system at the main design concepts and systems to achieve the detailed process and use. Inventory management system on the main functions. Well-structured system, stable

7、 performance, ease of use. It can run Win98/2000 / NT/XP/2003 system. The system for the whole Chinese language interface, full-function, easy to operate. The operating system, both Win98 style interface. System operator

8、s have a powerful authority, password managem</p><p>  In this paper, using object-oriented development of the design. In WindowsXP operating system environment, the application of MySQLdatabases and Java pr

9、ogramming visualization software developed by the inventory management system. </p><p>  The system for inventory management encountered by various problems, such as heavy workload, update data is not timely

10、, reliable and so low a detailed solution, the system is adapt to the current computer information management needs, in close connection with The inventory management in computer information management application, and t

11、he management of inventories of modern management, so as to further enhance the efficiency of inventory management.</p><p>  Key words:Inventory management;database;Java</p><p><b>  目錄<

12、/b></p><p>  摘要......................................................I</p><p>  Abstract II</p><p><b>  第1章 概述1</b></p><p>  1.1課題背景介紹1</p><

13、;p>  1.1.1課題開發(fā)背景1</p><p>  1.1.2 課題開發(fā)意義1</p><p>  1.2課題開發(fā)目標(biāo)2</p><p>  第2章 系統(tǒng)運(yùn)行環(huán)境及系統(tǒng)開發(fā)技術(shù)3</p><p>  2.1 系統(tǒng)運(yùn)行環(huán)境3</p><p>  2.1.1 硬件環(huán)境3</p><

14、p>  2.1.2 軟件開發(fā)環(huán)境3</p><p>  2.2 系統(tǒng)開發(fā)技術(shù)3</p><p>  2.2.1 Java簡介3</p><p>  2.2.2 MySQL 數(shù)據(jù)庫5</p><p>  第3章系統(tǒng)分析與設(shè)計(jì)6</p><p>  3.1 系統(tǒng)可行性分析6</p><

15、p>  3.1.1 經(jīng)濟(jì)可行性6</p><p>  3.1.2 操作可行性6</p><p>  3.1.3技術(shù)可行性6</p><p>  3.2 系統(tǒng)需求分析7</p><p>  3.3 總體功能設(shè)計(jì)8</p><p>  3.3.1 系統(tǒng)功能模塊圖8</p><p>

16、  3.3.2 總體功能流程圖9</p><p>  第4章 數(shù)據(jù)庫設(shè)計(jì)12</p><p>  4.1 數(shù)據(jù)庫設(shè)計(jì)思想12</p><p>  4.2 系統(tǒng)E-R圖13</p><p>  4.3 數(shù)據(jù)庫表設(shè)計(jì)13</p><p>  第5章 系統(tǒng)詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)21</p><p>

17、;  5.1系統(tǒng)登錄界面設(shè)計(jì)21</p><p>  5.2 系統(tǒng)主界面的設(shè)計(jì)21</p><p>  5.3 系統(tǒng)主要功能實(shí)現(xiàn)22</p><p>  5.3.1 進(jìn)貨管理22</p><p>  5.3.2 出貨管理24</p><p>  5.3.3庫存管理24</p><p>

18、;  5.3.4 統(tǒng)計(jì)報(bào)表25</p><p>  5.3.5 日常管理26</p><p>  5.4 數(shù)據(jù)庫連接27</p><p>  第6章 系統(tǒng)測試及結(jié)果分析29</p><p>  6.1 測試綜述29</p><p>  6.1.1 軟件測試綜述29</p><p> 

19、 6.1.2 數(shù)據(jù)庫測試29</p><p>  6.2 測試實(shí)例30</p><p><b>  結(jié) 論31</b></p><p><b>  致 謝32</b></p><p><b>  參考文獻(xiàn)33</b></p><p><

20、b>  第1章 概述</b></p><p><b>  1.1課題背景介紹</b></p><p>  1.1.1課題開發(fā)背景</p><p>  體育用品庫存管理系統(tǒng)是一個企業(yè)不可缺少的部分,它的內(nèi)容對于企業(yè)的決策者和管理者來說都至關(guān)重要,所以庫存管理系統(tǒng)應(yīng)該能夠?yàn)橛脩籼峁┏渥愕男畔⒑涂旖莸牟樵兪侄?。但一直以來人們使用傳統(tǒng)

21、人工的方式管理倉庫中的各種物資設(shè)備,這種管理方式存在著許多缺點(diǎn),如:效率低、另外時間一長,將產(chǎn)生大量的文件和數(shù)據(jù),這對于查找、更新和維護(hù)都帶來了不少的困難。 </p><p>  隨著科學(xué)技術(shù)的不斷提高,計(jì)算機(jī)科學(xué)日漸成熟,其強(qiáng)大的功能已為人們深刻認(rèn)識,它已進(jìn)入人類社會的各個領(lǐng)域并發(fā)揮著越來越重要的作用。</p><p>  作為計(jì)算機(jī)應(yīng)用的一部分,使用計(jì)算機(jī)對物資信息進(jìn)行管理,具有著手工

22、管理所無法比擬的優(yōu)點(diǎn).例如:檢索迅速、查找方便、可靠性高、存儲量大、保密性好、壽命長、成本低等。這些優(yōu)點(diǎn)能夠極大地提高人事勞資管理的效率,也是企業(yè)的科學(xué)化、正規(guī)化管理,與世界接軌的重要條件。 </p><p>  因此,開發(fā)這樣一套庫存管理軟件成為很有必要的事情。</p><p>  1.1.2 課題開發(fā)意義</p><p>  大多數(shù)庫存管理理論認(rèn)為,庫存是物理上

23、和邏輯上庫房庫位的所有有形和無形物料極其價(jià)值的總和,具體包括成品、原材料、在制品、在途品、生產(chǎn)前物料、備品備件等。雖然持有一些庫存是必要的,過量的庫存卻非但沒有用處而且占用了資金。占用的資金對于公司發(fā)展、新產(chǎn)品開發(fā)等都是非常需要的;減少資金占用還可以大大減少來自銀行貸款的利息和風(fēng)險(xiǎn)。對那些采購量特別大、采購件市場價(jià)格有波動的物料庫存,加強(qiáng)庫存管理效果更為明顯。因此,平衡公司庫存投資與其它資金需求至關(guān)重要。 </p><

24、;p>  隨著我國經(jīng)濟(jì)的飛速發(fā)展,各種類型規(guī)模的公司企業(yè)迅速崛起,許多從事生產(chǎn)和經(jīng)營管理的企業(yè)都有自己生產(chǎn)和銷售的產(chǎn)品,而這些產(chǎn)品都需要儲存在倉庫中,對于每個企業(yè)來說,隨著企業(yè)規(guī)模的不斷擴(kuò)大,產(chǎn)品數(shù)量的急劇增加,所生產(chǎn)產(chǎn)品的種類也會不斷地更新與發(fā)展,有關(guān)產(chǎn)品的各種信息量也會成倍增長。面對龐大的產(chǎn)品信息量,如何有效地管理庫存產(chǎn)品,對這些企業(yè)來說是非常重要的,庫存管理的重點(diǎn)是銷售信息能否及時反饋,從而確保企業(yè)運(yùn)行效益。而庫存管理又涉及

25、入庫、出庫的產(chǎn)品、操作人員及客戶等方方面面的因素,如何管理這些信息數(shù)據(jù),是一項(xiàng)復(fù)雜的系統(tǒng)工程,充分考驗(yàn)著倉庫管理員的工作能力,工作量的繁重是可想而知的,所以這就需要由庫存管理系統(tǒng)來提高庫存管理工作的效率,這對信息的規(guī)范管理、科學(xué)統(tǒng)計(jì)和快速查詢,減少管理方面的工作量,同時對于調(diào)動廣大員工的工作積極性,提高企業(yè)的生產(chǎn)效率,都具有十分重要的現(xiàn)實(shí)意義。[1]</p><p><b>  1.2課題開發(fā)目標(biāo)<

26、;/b></p><p>  設(shè)計(jì)和實(shí)現(xiàn)商品庫存管理系統(tǒng),使庫存管理的工作系統(tǒng)化、 規(guī)范化和自動化,從而達(dá)到提高管理效率的目的。 </p><p>  1.利用計(jì)算機(jī)系統(tǒng)實(shí)現(xiàn)商品庫存管理;</p><p>  2.流程符合商品庫存要求;</p><p>  3.查詢方便 , 無論是按商品編號.名稱.類別.廠商.時間其中任一項(xiàng)都可以進(jìn)行有

27、效查詢;</p><p>  4.系統(tǒng)擴(kuò)充容易,有很多地方還需要更好地完善;</p><p>  5.友好的用戶界面,既面向系統(tǒng)開發(fā)者,又面向用戶。</p><p>  第2章 系統(tǒng)運(yùn)行環(huán)境及系統(tǒng)開發(fā)技術(shù)</p><p>  2.1 系統(tǒng)運(yùn)行環(huán)境</p><p>  系統(tǒng)的運(yùn)行環(huán)境包括硬件和軟件兩方面。</p&g

28、t;<p>  2.1.1 硬件環(huán)境</p><p>  本系統(tǒng)運(yùn)行的硬件環(huán)境如下:</p><p><b>  CPU:1G以上。</b></p><p>  內(nèi)存:512M以上。</p><p>  2.1.2 軟件開發(fā)環(huán)境</p><p>  本系統(tǒng)軟件開發(fā)環(huán)境如下:</

29、p><p>  操作系統(tǒng):Windows XP/2003/2000。</p><p>  數(shù)據(jù)庫: MySQL </p><p>  數(shù)據(jù)庫連接驅(qū)動:MySQL Driver for JDBC Service PABCck3。</p><p>  JAVA虛擬機(jī):j2sdk 1.4.2。</p><p>  2.2 系統(tǒng)開

30、發(fā)技術(shù)</p><p>  本系統(tǒng)的開發(fā)主要是使用在Eclipse平臺下的Java語言,并結(jié)合了MySQL數(shù)據(jù)庫技術(shù),使此系統(tǒng)具有強(qiáng)大的查詢功能。</p><p>  2.2.1 Java簡介</p><p>  Java語言是一個支持網(wǎng)絡(luò)計(jì)算的面向?qū)ο蟪绦蛟O(shè)計(jì)語言。Java語言吸收了Smalltalk語言和C++語言的優(yōu)點(diǎn),并增加了其它特性,如支持并發(fā)程序設(shè)計(jì)、網(wǎng)

31、絡(luò)通信、和多媒體數(shù)據(jù)控制等。主要特性如下:</p><p>  1.Java語言是簡單的。Java語言的語法與C語言和C++語言很接近,使得大多數(shù)程序員很容易學(xué)習(xí)和使用Java。另一方面,Java丟棄了C++ 中很少使用的、很難理解的、令人迷惑的那些特性,如操作符重載、多繼承、自動的強(qiáng)制類型轉(zhuǎn)換。特別地,Java語言不使用指針,并提供了自動的廢料收集,使得程序員不必為內(nèi)存管理而擔(dān)憂。</p><

32、;p>  2.Java語言是一個面向?qū)ο蟮摹ava語言提供類、接口和繼承等原語,為了簡單起見,只支持類之間的單繼承,但支持接口之間的多繼承,并支持類與接口之間的實(shí)現(xiàn)機(jī)制(關(guān)鍵字為implements)。Java語言全面支持動態(tài)綁定,而C++ 語言只對虛函數(shù)使用動態(tài)綁定。總之,Java語言是一個純的面向?qū)ο蟪绦蛟O(shè)計(jì)語言。</p><p>  3.Java語言是分布式的。Java語言支持Internet應(yīng)用的

33、開發(fā),在基本的Java應(yīng)用編程接口中有一個網(wǎng)絡(luò)應(yīng)用編程接口(java.net),它提供了用于網(wǎng)絡(luò)應(yīng)用編程的類庫,包括URL、URLConnection、Socket、 ServerSocket等。Java的RMI(遠(yuǎn)程方法激活)機(jī)制也是開發(fā)分布式應(yīng)用的重要手段。</p><p>  4.Java語言是健壯的。Java的強(qiáng)類型機(jī)制、異常處理、廢料的自動收集等是Java程序健壯性的重要保證。對指針的丟棄是Java的明

34、智選擇。Java的安全檢查機(jī)制使得Java更具健壯性。</p><p>  5 .Java語言是安全的。Java通常被用在網(wǎng)絡(luò)環(huán)境中,為此,Java提供了一個安全機(jī)制以防惡意代碼的攻擊。除了Java語言具有的許多安全特性以外,Java對通過網(wǎng)絡(luò)下載的類具有一個安全防范機(jī)制(類ClassLoader),如分配不同的名字空間以防替代本地的同名類、字節(jié)代碼檢查,并提供安全管理機(jī)制(類SecurityManager)讓J

35、ava應(yīng)用設(shè)置安全哨兵。 </p><p>  6.Java語言是體系結(jié)構(gòu)中立的。Java程序(后綴為java的文件)在Java平臺上被編譯為體系結(jié)構(gòu)中立的字節(jié)碼格式(后綴為class的文件), 然后可以在實(shí)現(xiàn)這個Java平臺的任何系統(tǒng)中運(yùn)行。這種途徑適合于異構(gòu)的網(wǎng)絡(luò)環(huán)境和軟件的分發(fā)。 </p><p>  7.Java語言是可移植的。這種可移植性來源于體系結(jié)構(gòu)中立性,另外,Java還嚴(yán)格

36、規(guī)定了各個基本數(shù)據(jù)類型的長度。Java系統(tǒng)本身也具有很強(qiáng)的可移植性,Java編譯器是用Java實(shí)現(xiàn)的,Java的運(yùn)行環(huán)境是用ANSI C實(shí)現(xiàn)的。</p><p>  8.Java語言是解釋型的。如前所述,Java程序在Java平臺上被編譯為字節(jié)碼格式, 然后可以在實(shí)現(xiàn)這個Java平臺的任何系統(tǒng)中運(yùn)行。在運(yùn)行時,Java平臺中的Java解釋器對這些字節(jié)碼進(jìn)行解釋執(zhí)行,執(zhí)行過程中需要的類在聯(lián)接階段被載入到運(yùn)行環(huán)境中。

37、</p><p>  9.Java是高性能的。與那些解釋型的高級腳本語言相比,Java的確是高性能的。事實(shí)上,Java的運(yùn)行速度隨著JIT(Just-In-Time)編譯器技術(shù)的發(fā)展越來越接近于C++。 </p><p>  10.Java語言是多線程的。在Java語言中,線程是一種特殊的對象,它必須由Thread類或其子(孫)類來構(gòu)造,thread(Runnable) 的構(gòu)造子類將一個實(shí)

38、現(xiàn)了Runnable接口的對象包裝成一個線程,其二,從Thread類派生出子類并重寫run方法,使用該子類創(chuàng)建的對象即為線程。值得注意的是Thread類已經(jīng)實(shí)現(xiàn)了Runnable接口,因此,任何一個線程均有它的run方法,而run方法中包含了線程所要運(yùn)行的代碼。線程的活動由一組方法來控制。 Java語言支持多個線程的同時執(zhí)行,并提供多線程之間的同步機(jī)制(synchronized)。</p><p>  11.Ja

39、va語言是動態(tài)的。Java語言的設(shè)計(jì)目標(biāo)之一是適應(yīng)于動態(tài)變化的環(huán)境。Java程序需要的類能動態(tài)地被載入到運(yùn)行環(huán)境,也可以通過網(wǎng)絡(luò)來載入所需要的類。這也有利于軟件的升級。另外,Java中的類有一個運(yùn)行時刻的表示,能進(jìn)行運(yùn)行時刻的類型檢查。</p><p>  Java語言的優(yōu)良特性使得Java應(yīng)用具有無比的健壯性和可靠性,這也減少了應(yīng)用系統(tǒng)的維護(hù)費(fèi)用。Java對對象技術(shù)的全面支持和Java平臺內(nèi)嵌的API能縮短應(yīng)用

40、系統(tǒng)的開發(fā)時間并降低成本。Java的編譯一次,到處可運(yùn)行的特性使得它能夠提供一個隨處可用的開放結(jié)構(gòu)和在多平臺之間傳遞信息的低成本方式。特別是Java企業(yè)應(yīng)用編程接口(Java Enterprise APIs)為企業(yè)計(jì)算及電子商務(wù)應(yīng)用系統(tǒng)提供了有關(guān)技術(shù)和豐富的類庫。</p><p>  2.2.2 MySQL 數(shù)據(jù)庫</p><p>  MySQL是一個關(guān)系型數(shù)據(jù)庫管理系統(tǒng),由瑞典MySQL

41、 AB公司開發(fā),目前屬于Oracle公司。MySQL是一種關(guān)聯(lián)數(shù)據(jù)庫管理系統(tǒng),關(guān)聯(lián)數(shù)據(jù)庫將數(shù)據(jù)保存在不同的表中,而不是將所有數(shù)據(jù)放在一個大倉庫內(nèi),這樣就增加了速度并提高了靈活性。MySQL的SQL語言是用于訪問數(shù)據(jù)庫的最常用標(biāo)準(zhǔn)化語言。MySQL軟件采用了雙授權(quán)政策(本詞條“授權(quán)政策”),它分為社區(qū)版和商業(yè)版,由于其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點(diǎn),一般中小型網(wǎng)站的開發(fā)都選擇MySQL作為網(wǎng)站數(shù)據(jù)庫。由于其社區(qū)版的

42、性能卓越,搭配PHP和Apache可組成良好的開發(fā)環(huán)境。</p><p>  第3章系統(tǒng)分析與設(shè)計(jì)</p><p>  3.1 系統(tǒng)可行性分析</p><p>  可行性分析研究的目的就是用最小的代價(jià)在盡可能短的時間里確定問題是否能解決,通過復(fù)雜系統(tǒng)的規(guī)模與目標(biāo),研究與此類似的系統(tǒng)后,我們具體從下面三方面考慮。</p><p>  3.1.1

43、 經(jīng)濟(jì)可行性</p><p>  體育用品庫存管理系統(tǒng)是一個小型的管理系統(tǒng), 在開發(fā)時需要軟件開發(fā)人員花費(fèi)一定的時間和精力,因此需要一定的資金。但它給企業(yè)帶來的利潤是不可估量的,節(jié)省了許多人力,物力上的開支,使庫存管理工作變繁為簡,使其更加合理化、規(guī)范化。工作效率的提高就意為著整體水平的提高,是非常值得投資的。</p><p>  3.1.2 操作可行性</p><p&

44、gt;  系統(tǒng)是在JDK 環(huán)境下基于Eclipse平臺開發(fā)的,易于操作。而且系統(tǒng)還采用了可視化面向?qū)ο蟮墓ぞ唛_發(fā),其窗口、界面簡潔易懂,所以系統(tǒng)在操作上是可行的。</p><p>  3.1.3技術(shù)可行性</p><p>  系統(tǒng)采用Java語言作為開發(fā)工具。Java是一種簡單的,面象對象的,分布式的,解釋的,鍵壯的安全的,結(jié)構(gòu)的中立的,可移植的,性能很優(yōu)異的多線程的動態(tài)的語言。它具有理論

45、嚴(yán)密、使用方便、易學(xué)易用等特點(diǎn),利用它設(shè)計(jì)的系統(tǒng)具有界面友好、工具豐富速度較快的特點(diǎn)。再結(jié)合MySQL數(shù)據(jù)庫技術(shù),編寫SQL語言訪問數(shù)據(jù)庫,實(shí)現(xiàn)強(qiáng)大的查詢、修改、入庫、出庫操作</p><p>  3.2 系統(tǒng)需求分析</p><p>  通過需求分析,對體育用品庫存進(jìn)行有效的管理,使之形成完善的應(yīng)用系統(tǒng)。數(shù)據(jù)庫設(shè)計(jì)中要合理設(shè)置商品信息和庫存信息等,用來實(shí)現(xiàn)用品信息的新增,修改、刪除等功能

46、,使得商家有較詳細(xì)的數(shù)據(jù)統(tǒng)計(jì)與分析。 </p><p>  下面就介紹一些此庫存管理系統(tǒng)的基本功能:</p><p><b>  1.登錄認(rèn)證</b></p><p>  作為一個企業(yè)實(shí)際應(yīng)用項(xiàng)目,登錄認(rèn)證是必不可少的。本項(xiàng)目的用戶登錄管理比較簡單,分為操作員和管理員登錄,操作員和管理員有不同的權(quán)限。越權(quán)操作會有提示信息,只有合法用戶才能進(jìn)行操

47、作。</p><p><b>  2.進(jìn)貨管理</b></p><p>  進(jìn)貨管理主要是操作員對倉庫進(jìn)行進(jìn)貨入庫和退貨出庫操作,操作人員通過改功能模塊把每天的入庫單據(jù)及上面的入庫商品明細(xì)輸入數(shù)據(jù)庫并對商品信息進(jìn)行修改和刪除。該模塊支持按商品編號和商品名稱關(guān)鍵詞查詢進(jìn)貨單據(jù)、退貨單據(jù)和當(dāng)前庫存量并對單據(jù)進(jìn)行刪除。</p><p><b&g

48、t;  3.出貨管理</b></p><p>  出貨管理模塊與進(jìn)貨管理模塊相似,主要是對貨品出庫和客戶退貨進(jìn)行管理及對出貨單據(jù)進(jìn)行管理。操作人員通過該功能模塊對出庫商品進(jìn)行出庫操作和對客戶退貨商品進(jìn)行退貨入庫操作。另外,還能對出貨單據(jù)、退貨單據(jù)和當(dāng)前庫存按商品編號或商品名稱進(jìn)行查詢和刪除。</p><p><b>  4.庫存管理</b></p&g

49、t;<p>  庫存管理模塊主要是對已庫存的商品進(jìn)行操作,及進(jìn)行庫存調(diào)撥,包括對商品的倉庫信息進(jìn)行修改。另外,可以按商品名稱、倉庫和商品類別對所有商品進(jìn)行盤點(diǎn),并對調(diào)撥單據(jù)進(jìn)行查詢,當(dāng)倉庫中某種商品少于某個數(shù)量時,設(shè)置了庫存報(bào)警。</p><p><b>  5.統(tǒng)計(jì)報(bào)表</b></p><p>  統(tǒng)計(jì)報(bào)表模塊包括供貨商統(tǒng)計(jì)、客戶統(tǒng)計(jì)、庫存統(tǒng)計(jì)、采購統(tǒng)

50、計(jì)、出貨統(tǒng)計(jì)、退貨出庫統(tǒng)計(jì)和客戶退貨統(tǒng)計(jì)的功能。各個統(tǒng)計(jì)都可以按照不同時間和各個關(guān)鍵字進(jìn)行統(tǒng)計(jì)查詢并能打印單據(jù)。</p><p><b>  6.日常管理</b></p><p>  日常管理模塊既包括對供應(yīng)商、倉庫、業(yè)務(wù)員和客戶的管理,有包括對操作員和管理員的設(shè)置,但在這里要注意權(quán)限問題,及操作員和管理的權(quán)限。</p><p>  3.3 總

51、體功能設(shè)計(jì)</p><p>  本部分主要介紹系統(tǒng)要實(shí)現(xiàn)的功能,搭好設(shè)計(jì)的總體框架,使我們對要開發(fā)的系統(tǒng)有一個系統(tǒng)、全面、確切的認(rèn)識。</p><p>  3.3.1 系統(tǒng)功能模塊圖</p><p>  本系統(tǒng)在設(shè)計(jì)時采用結(jié)構(gòu)化程序的設(shè)計(jì)方法,系統(tǒng)的總體結(jié)構(gòu)采用菜單來調(diào)用表單。利用表單對信息進(jìn)行管理、數(shù)據(jù)錄入、信息查詢、系統(tǒng)管理等工作。具體設(shè)計(jì)的功能模塊如下:<

52、;/p><p><b>  1.進(jìn)貨管理模塊</b></p><p>  該模塊包括進(jìn)貨入庫管理模塊和退貨出庫管理模塊。進(jìn)貨入庫管理模塊可添加商品和修改存在倉庫的商品信息,退貨出庫管理模塊可刪除已入庫的商品信息,并能對進(jìn)貨單據(jù)、退貨單據(jù)和當(dāng)前庫存進(jìn)行查詢。</p><p><b>  2.出貨管理模塊</b></p>

53、;<p>  該模塊包括出貨入庫管理模塊和退貨出庫管理模塊。出貨入庫管理模塊可添加和修改出庫商品,退貨出庫管理模塊可刪除出庫商品的信息,并能對出貨單據(jù)、退貨單據(jù)和當(dāng)前庫存進(jìn)行查詢。</p><p><b>  3.庫存管理模塊</b></p><p>  該模塊包括庫存盤點(diǎn)模塊、調(diào)撥單據(jù)查詢模塊和庫存報(bào)警模塊。</p><p>&

54、lt;b>  4.統(tǒng)計(jì)報(bào)表模塊</b></p><p>  該模塊由五個子模塊構(gòu)成,分別是:采購統(tǒng)計(jì)模塊、出貨統(tǒng)計(jì)模塊、退貨統(tǒng)計(jì)模塊和庫存統(tǒng)計(jì)模塊,每個子模塊都具有強(qiáng)大的統(tǒng)計(jì)功能。</p><p><b>  5.日常管理模塊</b></p><p>  該模塊包括供應(yīng)商管理模塊、倉庫管理模塊、客戶管理模塊、業(yè)務(wù)員管理模塊、操

55、作員管理模塊和管理員管理模塊,主要是對相關(guān)信息進(jìn)行查詢、修改、刪除等。</p><p>  根據(jù)以上系統(tǒng)功能的分析與設(shè)計(jì),五個系統(tǒng)功能模塊的劃分,具體的功能模塊圖如下圖所示:</p><p>  圖3-1 系統(tǒng)功能模塊圖</p><p>  3.3.2 總體功能流程圖</p><p>  1.整個系統(tǒng)的流程由用戶登錄開始,系統(tǒng)檢驗(yàn)用戶名和密碼

56、合法后,用戶成功登錄,進(jìn)入系統(tǒng)后可以對商品進(jìn)行基本操作,如進(jìn)貨、出貨和調(diào)撥,還可以對進(jìn)貨單據(jù)、出貨單據(jù)、退貨單據(jù)等進(jìn)行查詢,對各個報(bào)表進(jìn)行統(tǒng)計(jì);在這個過程中還可以進(jìn)行換班管理,其實(shí)相當(dāng)于當(dāng)前用戶退出,另一用戶登錄,操作流程與前者一樣,只是有權(quán)限的限制,用戶完成工作后即可退出系統(tǒng)。整個系統(tǒng)的流程可以用下面的圖3-2所示:</p><p>  圖3-2 系統(tǒng)流程圖</p><p>  2.入庫

57、單和出庫單的操作是庫存管理系統(tǒng)中最重要的兩個操作,在整體功能設(shè)計(jì)時,對入庫單和出庫單的管理如上圖,先判斷是否有商品要入庫,有則對庫存進(jìn)行設(shè)置,包括入庫商品的基本信息,保存入庫單,然后判定此入庫單是否要進(jìn)庫,確認(rèn)進(jìn)庫的話入庫單據(jù)就處理完畢,在商品入庫信息表中就可以查看庫存;若暫時不進(jìn)庫,那么只有暫時保存入庫單。出庫單的處理流程像入庫單的處理一樣,當(dāng)有商品要出庫時,先填寫出庫單,包括出庫商品的相關(guān)信息,然后保存出庫單,如果確認(rèn)此商品要出庫,

58、系統(tǒng)會先判斷庫存數(shù)量和出庫數(shù)量是否合適(即出庫數(shù)量小于等于庫存量),如果合適就允許出庫,出庫單據(jù)處理完畢;如果不合適,需要修改出庫數(shù)量,保存新的單據(jù)之后再進(jìn)行判斷,直至數(shù)量合適允許出庫。入庫和出庫的具體流程圖如下圖3-3所示:</p><p>  圖3-3 入/出庫流程示意圖</p><p><b>  第4章 數(shù)據(jù)庫設(shè)計(jì)</b></p><p&g

59、t;  4.1 數(shù)據(jù)庫設(shè)計(jì)思想</p><p>  庫存管理系統(tǒng)的數(shù)據(jù)庫設(shè)計(jì)采用了MySQL 數(shù)據(jù)庫,數(shù)據(jù)庫名為kucunguanli,采用JDBC(Java數(shù)據(jù)庫連接)連接數(shù)據(jù)庫,JDBC是由一組用Java編程語言編寫的類和接口組成。</p><p>  根據(jù)系統(tǒng)需求,在登錄系統(tǒng)時提供所要的身份驗(yàn)證信息,在本系統(tǒng)中設(shè)計(jì)了兩種登錄方式,分別是操作員和管理員,所以設(shè)計(jì)了操作員信息表和管理員信

60、息表。經(jīng)過身份驗(yàn)證后,進(jìn)入系統(tǒng)。在日常管理模塊中涉及到采購員管理,校驗(yàn)員管理,出貨員管理,要設(shè)計(jì)采購員信息表,校驗(yàn)員信息表和出貨員信息表。在進(jìn)貨管理模塊中,操作員要進(jìn)行基本的進(jìn)貨管理操作,增加入庫商品、修改商品信息,并對入庫的用品進(jìn)行查詢,這就需要設(shè)計(jì)商品信息表和商品入庫表。在出貨管理模塊中操作員要進(jìn)行基本的出貨管理操作,增加出庫用品以及相關(guān)的查詢操作,需要設(shè)計(jì)用品出庫表。在庫存管理模塊中,涉及到庫存調(diào)撥操作,在設(shè)計(jì)數(shù)據(jù)庫表時就要設(shè)計(jì)庫

61、存調(diào)撥表。在統(tǒng)計(jì)報(bào)表模塊中,涉及到供貨商和客戶的統(tǒng)計(jì),因此要設(shè)計(jì)供貨商信息表和客戶信息表。在設(shè)計(jì)表時要注意數(shù)據(jù)類型的選取要合適,約束的定義要準(zhǔn)確,為了方便理解,最好還要添加描述,使設(shè)計(jì)出來的表一目了然。通過與數(shù)據(jù)庫連接,用數(shù)據(jù)庫表保存系統(tǒng)所需要的功能數(shù)據(jù)信息,實(shí)現(xiàn)系統(tǒng)的各個功能。</p><p>  根據(jù)以上的分析,本系統(tǒng)采用關(guān)系型數(shù)據(jù)庫并設(shè)計(jì)了14個數(shù)據(jù)庫表,分別是商品信息表、操作員信息表、管理員信息表、采購員

62、信息表、校驗(yàn)員信息表、出貨員信息表、庫存調(diào)撥表、退貨出庫表、退貨入庫表、商品庫存表、商品入庫表、商品出庫表、客戶信息表、供貨商信息表和倉庫信息表。</p><p>  庫存管理系統(tǒng)數(shù)據(jù)庫的訪問采用JDBC的方式連接。</p><p>  4.2 系統(tǒng)E-R圖</p><p>  本系統(tǒng)是商品庫存管理系統(tǒng),根據(jù)上面的結(jié)構(gòu)設(shè)計(jì)和初步的數(shù)據(jù)庫設(shè)計(jì)思想,規(guī)劃的實(shí)體主要有操作

63、員,商品實(shí)體、供應(yīng)商實(shí)體、客戶實(shí)體和倉庫實(shí)體等。這些實(shí)體包含各種具體實(shí)際信息,通過相互之間的作用形成數(shù)據(jù)的流動。它們的E-R圖如下圖4-1所示:</p><p>  圖4-1 系統(tǒng)E-R圖</p><p>  4.3 數(shù)據(jù)庫表設(shè)計(jì)</p><p>  本系統(tǒng)是一個商品庫存管理系統(tǒng),在系統(tǒng)詳細(xì)設(shè)計(jì)之前應(yīng)該對系統(tǒng)中所涉及到的對象實(shí)體進(jìn)行信息建模,并最終得到完整的數(shù)據(jù)庫表

64、結(jié)構(gòu)。</p><p><b>  1.商品信息表 </b></p><p>  實(shí)體“商品”位于整個系統(tǒng)實(shí)體的核心位置,其包括的屬性有:商品編號、商品名稱、庫存量、類別、存放倉庫、入庫單價(jià)、單位、顏色和廠商。因此“商品”實(shí)體所對應(yīng)的數(shù)據(jù)表結(jié)構(gòu)如表4-1所示:</p><p>  表4-1 商品信息表結(jié)構(gòu)</p><p>

65、;<b>  2.操作員信息表 </b></p><p>  操作員負(fù)責(zé)所有商品入庫、出庫的操作,此表用來保存合法的操作員信息,包括的屬性有操作員編號、操作員姓名和操作員密碼,具體結(jié)構(gòu)設(shè)計(jì)如表4-2所示:</p><p>  表4-2 操作員信息表結(jié)構(gòu) </p><p><b>  3.管理員信息表 </b></p&

66、gt;<p>  管理員主要負(fù)責(zé)日常管理模塊中對各個業(yè)務(wù)人員的管理,此表用來保存合法的管理員信息,具體結(jié)構(gòu)設(shè)計(jì)如表4-3所示:</p><p>  表4-3管理員信息表結(jié)構(gòu)</p><p><b>  4.采購員信息表 </b></p><p>  采購員主要負(fù)責(zé)對商品的采購,它的屬性包括采購員編號、采購員姓名、性別和電話,具體結(jié)

67、構(gòu)設(shè)計(jì)如表4-4所示:</p><p>  表4-4采購員信息表結(jié)構(gòu)</p><p><b>  5.校驗(yàn)員信息表 </b></p><p>  校驗(yàn)員負(fù)責(zé)商品入庫和出庫時的校驗(yàn)工作,屬性包括校驗(yàn)員編號、校驗(yàn)員姓名、校驗(yàn)員性別和電話,具體結(jié)構(gòu)設(shè)計(jì)如表4-5所示:</p><p>  表4-5 校驗(yàn)員信息表結(jié)構(gòu)</p

68、><p><b>  6.出貨員信息表 </b></p><p>  出貨員負(fù)責(zé)商品的出庫操作,其屬性包括出貨員編號、出貨員姓名、出貨員性別和電話,具體結(jié)構(gòu)設(shè)計(jì)如表4-6所示:</p><p>  表4-6 出貨員信息表結(jié)構(gòu)</p><p><b>  7.庫存調(diào)撥表 </b></p>&

69、lt;p>  庫存調(diào)撥表用來保存被調(diào)撥的商品信息,方便對調(diào)撥單據(jù)的查詢,具體結(jié)構(gòu)設(shè)計(jì)如表4-7所示:</p><p>  表4-7庫存調(diào)撥表結(jié)構(gòu)</p><p><b>  8.退貨出庫表 </b></p><p>  退貨出庫表用來保存對已進(jìn)庫的商品進(jìn)行退貨出庫的信息保存,具體的結(jié)構(gòu)設(shè)計(jì)如表4-8所示:

70、 表4-8 退貨出庫表結(jié)構(gòu)</p><p><b>  9.退貨入庫表 </b></p><p>  退貨入庫表是用來保存客戶退貨后商品入庫的相關(guān)信息,具體的結(jié)構(gòu)設(shè)計(jì)如表4-9所示:</p><p>  表4-9 退貨入庫表結(jié)構(gòu)</p><p><b>  10.客戶信息表 </b><

71、/p><p>  客戶信息表是用來保存客戶的相關(guān)信息,該實(shí)體的屬性包括客戶編號、客戶名字、聯(lián)系人、電話和地址等,具體的結(jié)構(gòu)設(shè)計(jì)如表4-10所示:</p><p>  表4-10 客戶信息表結(jié)構(gòu)</p><p><b>  11.倉庫信息表 </b></p><p>  倉庫信息表是用來保存所有倉庫相關(guān)信息的表,具體的結(jié)構(gòu)設(shè)計(jì)

72、如表4-11所示:</p><p>  表4-11倉庫信息表結(jié)構(gòu)</p><p><b>  12.商品庫存表 </b></p><p>  商品庫存表是用來保存現(xiàn)庫存的商品的相關(guān)信息,具體的結(jié)構(gòu)設(shè)計(jì)如表4-12所示:</p><p>  表4-12 商品庫存表結(jié)構(gòu)</p><p>  13.供貨

73、商信息表 </p><p>  供貨商信息表是用來保存所有與公司有來往的供貨商的相關(guān)信息,具體的結(jié)構(gòu)設(shè)計(jì)如表4-13所示:</p><p>  表4-13 供貨商信息表結(jié)構(gòu)</p><p><b>  14.商品入庫表 </b></p><p>  商品入庫表是用來保存所有入庫商品的相關(guān)信息的表,該表的具體結(jié)構(gòu)設(shè)計(jì)如表

74、4-14所示:</p><p>  表4-14商品入庫表結(jié)構(gòu)</p><p>  第5章 系統(tǒng)詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)</p><p>  5.1系統(tǒng)登錄界面設(shè)計(jì)</p><p>  系統(tǒng)登錄模塊主要用于驗(yàn)證工作人員登錄系統(tǒng)時輸入的用戶名、密碼是否正確,登錄方式是否正確,如果正確,工作人員進(jìn)入系統(tǒng),否則將不能進(jìn)入此系統(tǒng)。實(shí)現(xiàn)此功能的文件是Login.j

75、ava,系統(tǒng)登陸窗口的運(yùn)行界面如下圖5-1所示:</p><p>  圖5-1 用戶登錄界面圖</p><p>  5.2 系統(tǒng)主界面的設(shè)計(jì)</p><p>  經(jīng)過用戶身份驗(yàn)證后,進(jìn)入系統(tǒng)主界面,系統(tǒng)主界面主要是讓用戶對該系統(tǒng)的各個功能模塊一目了然,使用方便快捷,在主界面的上方我們可以看到四個按鈕,包括換班、單據(jù)查詢、幫助和退出;在主界面的左半部又可以看到五個按鈕

76、,分別是進(jìn)貨管理、出貨管理、庫存管理、統(tǒng)計(jì)報(bào)表和日常管理,這些主要涉及到按鈕的設(shè)計(jì),以及這樣將圖片文字對應(yīng)到各個按鈕和背景上,使主界面看起來舒服美觀;在主界面的最下方帶有時間顯示和操作員或管理員編號。實(shí)現(xiàn)此功能的文件是MainFrame.java,系統(tǒng)主界面運(yùn)行結(jié)果如下圖5-2所示:</p><p>  圖5-2 系統(tǒng)主界面圖</p><p>  5.3 系統(tǒng)主要功能實(shí)現(xiàn)</p>

77、;<p>  系統(tǒng)功能模塊主要包括進(jìn)貨管理模塊、出貨管理模塊、庫存管理模塊、統(tǒng)計(jì)報(bào)表模塊、日常管理模塊,每個模塊具體實(shí)現(xiàn)如下。</p><p>  5.3.1 進(jìn)貨管理</p><p>  進(jìn)貨管理主要包括進(jìn)貨入庫和退貨出庫兩種操作,還可進(jìn)行進(jìn)貨單據(jù)、退貨單據(jù)和當(dāng)前庫存的查詢。實(shí)現(xiàn)該模塊的文件是Jinhuo.java,進(jìn)貨管理的界面如下圖5-3所示:</p>&

78、lt;p>  圖5-3 進(jìn)貨管理模塊界面圖</p><p>  進(jìn)貨入庫操作也就是向倉庫添加商品信息,添加商品成功,則在窗體下方會顯示入庫的商品信息,在添加商品時應(yīng)注意所填的內(nèi)容要符合字段類型,如果不符合,系統(tǒng)會給出提示信息。另外,對已入庫的商品只要選中某一行還可對它進(jìn)行信息修改,進(jìn)貨入庫的操作界面如圖5-4所示:</p><p>  圖5-4 進(jìn)貨入庫操作界面</p>

79、<p>  5.3.2 出貨管理</p><p>  出貨管理模塊主要包括兩個操作:貨品出庫和客戶退貨。出貨管理模塊實(shí)現(xiàn)的代碼是文件Chuhuo.java,出貨管理界面的設(shè)計(jì)如圖5-5所示:</p><p>  圖5-5 出貨管理界面圖</p><p><b>  5.3.3庫存管理</b></p><p>

80、  庫存管理模塊主要是實(shí)現(xiàn)庫存商品的調(diào)撥、盤點(diǎn)和報(bào)警功能。庫存調(diào)撥是對商品進(jìn)行調(diào)庫操作,即將某商品由一個倉庫調(diào)到另一倉庫;庫存盤點(diǎn)對庫存商品進(jìn)行詳細(xì)盤點(diǎn),本系統(tǒng)可實(shí)現(xiàn)四種盤點(diǎn)商品的方式,包括:盤點(diǎn)所有商品、按商品編號或名稱盤點(diǎn)某種商品、按倉庫盤點(diǎn)和按類別盤點(diǎn)。庫存報(bào)警的功能是可以顯示當(dāng)前庫存量為0的商品,以便提示用戶及時進(jìn)貨。實(shí)現(xiàn)這三個功能的文件分別是Kucundiaobo.java、Kucunpandian.java和Kucunjin

81、gbao.java。庫存管理模塊的界面設(shè)計(jì)如圖5-6所示:</p><p>  圖5-6 庫存管理主界面圖</p><p>  5.3.4 統(tǒng)計(jì)報(bào)表</p><p>  統(tǒng)計(jì)報(bào)表模塊主要是實(shí)現(xiàn)統(tǒng)計(jì)功能,可根據(jù)選定的日期范圍對這一段時間內(nèi)供貨商、客戶、采購、出貨、退貨出庫和客戶退貨信息進(jìn)行查詢。此模塊最重要的技術(shù)是用到了日期控件,使查詢起來更加方便快捷,統(tǒng)計(jì)報(bào)表模塊的

82、界面設(shè)計(jì)如圖5-7所示:</p><p>  圖5-7 統(tǒng)計(jì)報(bào)表模塊界面圖</p><p>  采購統(tǒng)計(jì)能實(shí)現(xiàn)進(jìn)貨統(tǒng)計(jì)、按倉庫統(tǒng)計(jì)、按類別統(tǒng)計(jì)和按采購員統(tǒng)計(jì),統(tǒng)計(jì)后可以查看單據(jù)并打印,查詢時課選擇時間范圍,如圖5-8所示:</p><p>  圖5-8 采購統(tǒng)計(jì)界面圖</p><p>  5.3.5 日常管理</p><p

83、>  日常管理模塊只要是對日常的人員和倉庫進(jìn)行基本管理,如增加、修改、刪除和查詢等基本操作,日常管理模塊的主界面設(shè)計(jì)如圖5-9所示:</p><p>  圖5-9 日常管理主界面</p><p><b>  5.4 數(shù)據(jù)庫連接</b></p><p>  用JDBC連接MySQL,步驟是:</p><p>  1

84、向工程中添加數(shù)據(jù)庫驅(qū)動包,即將JAR包導(dǎo)入到項(xiàng)目中;</p><p>  2 載入JDBC驅(qū)動程序。如果要載入驅(qū)動程序,只需要在Class.forName方法中指定數(shù)據(jù)庫驅(qū)動程序的類名:Class.forName(DriverName)。這樣做就自動創(chuàng)建了驅(qū)動程序的實(shí)例,并注冊到JDBC驅(qū)動程序管理器。這個參數(shù)接收一個表示完全限定類名(即包括包名的類名)的字符串,載入對應(yīng)的類。這個調(diào)用可能會拋出ClassNotF

85、oundException異常,因而必須放在try/catch塊中。</p><p>  因而,本系統(tǒng)實(shí)現(xiàn)JDBC驅(qū)動程序的方案為:</p><p>  com.microsoft.jdbc.sqlserver.SQLServerDriver</p><p>  連接數(shù)據(jù)庫驅(qū)動的代碼如下:</p><p>  public void conn

86、ectDatabase() {</p><p><b>  try {</b></p><p>  MainFrame.tableModel = new ResultSetTableModel(JDBC_DRIVER,</p><p>  DATABASE_URL, "sa", "");</p>

87、;<p>  MainFrame.tableModel1 = new ResultSetTableModel(JDBC_DRIVER,</p><p>  DATABASE_URL, "sa", "");</p><p>  MainFrame.tableModel2 = new ResultSetTableModel(JDBC_DRI

88、VER,</p><p>  DATABASE_URL, "sa", "");</p><p>  MainFrame.tableModel3 = new ResultSetTableModel(JDBC_DRIVER,</p><p>  DATABASE_URL, "sa", "")

89、;</p><p>  MainFrame.tableModel4 = new ResultSetTableModel(JDBC_DRIVER,</p><p>  DATABASE_URL, "sa", "");</p><p>  MainFrame.tableModel5 = new ResultSetTableMode

90、l(JDBC_DRIVER,</p><p>  DATABASE_URL, "sa", "");</p><p>  MainFrame.tableModel6 = new ResultSetTableModel(JDBC_DRIVER,</p><p>  DATABASE_URL, "sa", &qu

91、ot;");</p><p>  MainFrame.tableModel7 = new ResultSetTableModel(JDBC_DRIVER,</p><p>  DATABASE_URL, "sa", "");</p><p>  } catch (SQLException exception) {&l

92、t;/p><p>  String err = exception.getMessage();</p><p>  System.err.println(err);</p><p>  if (err.indexOf("kucunguanli") == -1) {</p><p>  JOptionPane.showMessa

93、geDialog(Login.this, "數(shù)據(jù)庫連接出錯", "數(shù)據(jù)庫錯誤",JOptionPane.ERROR_MESSAGE);</p><p>  System.out.println("系統(tǒng)異常退出!");</p><p>  System.exit(1);</p><p><b>  

94、}</b></p><p>  } catch (ClassNotFoundException exception) {</p><p>  System.err.println(exception.getMessage());</p><p><b>  }</b></p><p><b>  }

95、</b></p><p>  3 建立連接。載入JDBC驅(qū)動程序后,必須連接URL指定數(shù)據(jù)庫服務(wù)器的主機(jī)名、端口和數(shù)據(jù)庫名。在本系統(tǒng)中連接數(shù)據(jù)庫的語句是:</p><p>  Final String JDBC_DRIVER = "com.microsoft.jdbc.sqlserver.SQLServerDriver";</p><p&

96、gt;  final String DATABASE_URL = "jdbc:microsoft:sqlserver://localhost:1433;DATABASENAME=kucunguanli";</p><p>  數(shù)據(jù)庫連接成功,在登錄系統(tǒng)時會提示操作員或管理員成功登陸,若數(shù)據(jù)庫連接失敗,則登錄時系統(tǒng)會拋出異常,并提示數(shù)據(jù)庫連接失敗的錯誤,操作員或管理員進(jìn)入不了系統(tǒng)。</p&

97、gt;<p>  第6章 系統(tǒng)測試及結(jié)果分析</p><p><b>  6.1 測試綜述</b></p><p>  為了確保本系統(tǒng)的質(zhì)量和可靠性,要對系統(tǒng)進(jìn)行全面的測試和調(diào)試,主要是軟件測試和數(shù)據(jù)庫測試,下面分別對它們進(jìn)行了介紹。</p><p>  6.1.1 軟件測試綜述</p><p>  軟件測

98、試階段的主要任務(wù)是發(fā)現(xiàn)并排除在分析、設(shè)計(jì)、編程階段中產(chǎn)生的各種類型的錯誤,以得到可使用的軟件系統(tǒng)。從用戶和軟件開發(fā)人員不同的角度看,進(jìn)行軟件測試的目的是完全不同的。用戶往往是通過測試暴露出軟件所存在的錯誤和缺陷,以考慮是否能接受該產(chǎn)品;而軟件開發(fā)人員則希望通過測試來證實(shí)軟件產(chǎn)品不存在任何錯誤和缺陷,驗(yàn)證該軟件已滿足了用戶的需求,從而提高用戶使用該軟件產(chǎn)品的信心。因此,軟件開發(fā)人員往往會選擇那些導(dǎo)致程序失敗概率小的測試數(shù)據(jù)去測試軟件。顯然

99、,這樣的測試對完善和提高軟件質(zhì)量毫無價(jià)值。因此,測試的目的應(yīng)該是從軟件包含有錯誤這一前提出發(fā),通過測試查出并改正盡可能多的錯誤,不斷提高軟件的質(zhì)量和可靠型軟件測試分為動態(tài)測試和靜態(tài)測試。按產(chǎn)生測試數(shù)據(jù)的不同方式,動態(tài)測試可分為功能測試和結(jié)構(gòu)測試,即黑盒測試和白盒測試。本系統(tǒng)采用的是黑盒測試。所謂黑盒測試是把測試對象視為一個黑盒子,測試人員只著眼于軟件的外部特性,而不考慮軟件的內(nèi)部的邏輯結(jié)構(gòu),是在軟件接口上進(jìn)行的測試。 </p&g

100、t;<p>  6.1.2 數(shù)據(jù)庫測試</p><p>  測試系統(tǒng)與數(shù)據(jù)庫是否連接上可以在包里寫一個測試類TestSQL,代碼如下:</p><p>  import java.sql.Connection;   </p><p>  import java.sql.DriverManager;  &

101、#160;</p><p>  public class TestSQL {   </p><p>  public static void main(String[] args) {   </p><p>  String url=&q

102、uot;jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=kucunguanli";   </p><p>  String username="sa";   </p><p>  String pwd="";  

103、; </p><p>  String driver="com.microsoft.jdbc.sqlserver.SQLServerDriver";   </p><p>  Connection conn=null;   </p><p><b>  try{ &#

104、160; </b></p><p>  Class.forName(driver);   </p><p>  System.out.println("數(shù)據(jù)庫驅(qū)動程序注冊成功!");   </p><p>  conn=DriverManager.getConnection(url,u

105、sername,pwd);   </p><p>  System.out.println("數(shù)據(jù)庫連接成功");   </p><p>  }catch(Exception e){   </p><p>  e.printStackTrace();   &

106、lt;/p><p>  System.out.println("數(shù)據(jù)庫連接失敗");   </p><p><b>  }   </b></p><p><b>  }   </b></p><p><b>  }

107、  </b></p><p>  根據(jù)以上編寫的數(shù)據(jù)庫連接測試代碼,運(yùn)行系統(tǒng),以用戶名“sa”,密碼為空登錄,若數(shù)據(jù)庫連接成功,則進(jìn)入系統(tǒng)并在運(yùn)行結(jié)果窗口有“數(shù)據(jù)庫連接成功”的提示;若數(shù)據(jù)庫連接失敗,則在運(yùn)行結(jié)果窗口有“數(shù)據(jù)庫連接失敗”的提示。</p><p><b>  6.2 測試實(shí)例</b></p><p>

108、;  本系統(tǒng)的測試實(shí)例如下:在商品進(jìn)貨管理的進(jìn)貨入庫的窗口中添加入庫商品信息,輸入商品編號為010122,商品名稱為聯(lián)想電腦,商品類別選擇電腦,單位選擇臺,入庫數(shù)量為30,入庫單價(jià)為4000元,顏色選擇黑色,供貨商為聯(lián)想集團(tuán),存放倉庫為電子產(chǎn)品一庫,廠商為聯(lián)想電腦公司,采購員為陳晶晶,校驗(yàn)員為Roy,除了備注,其他的都必須填寫,否則會提示添加有錯誤。填好后,單擊確定,一批進(jìn)貨完成,入庫商品信息被保存經(jīng)過多次測試,系統(tǒng)基本上沒有什么錯誤了

109、。</p><p><b>  結(jié) 論</b></p><p>  經(jīng)過兩個多月的努力,完成了本次畢業(yè)設(shè)計(jì)。在系統(tǒng)開發(fā)之前,指導(dǎo)老師就建議我們?nèi)ス緦?shí)習(xí)或做一些調(diào)查,以便我們對本次系統(tǒng)有更合理、實(shí)用的設(shè)計(jì),而不是只靠自己的意想當(dāng)然去設(shè)計(jì),在做了詳細(xì)的調(diào)查,搜集大量的相關(guān)資料,并咨詢了很多專業(yè)人士后,開始進(jìn)行該系統(tǒng)設(shè)計(jì)。設(shè)計(jì)時,嚴(yán)格按照軟件工程的思想,從需求分析、可行性

110、分析、總體設(shè)計(jì)、最后到詳細(xì)設(shè)計(jì)。本系統(tǒng)我認(rèn)為比較出色的地方就是采用類控件設(shè)計(jì),數(shù)據(jù)庫的操作也是寫在java包里,不需要另外寫存儲過程和觸發(fā)器;在主界面的設(shè)計(jì)上也別出心裁,每個按鈕都用合適的圖片覆蓋上,使界面看起來很舒服美觀。本系統(tǒng)是用Java寫的基于桌面的一個系統(tǒng),雖然沒有達(dá)到網(wǎng)絡(luò)化的要求,但基本的庫存管理功能和大數(shù)據(jù)量的查詢工作都基本可以滿足,包括按選擇的日期范圍查詢,根據(jù)市場的情形,就只實(shí)現(xiàn)單機(jī)系統(tǒng)也就足夠了。在設(shè)計(jì)過程中,我遇到了

111、很多技術(shù)上的問題,平時在學(xué)習(xí)過程中,即使上機(jī)實(shí)驗(yàn)也都是些小的、較為簡單的程序設(shè)計(jì),都稱不上為系統(tǒng),因此,在開發(fā)系統(tǒng)的過程中碰到了很多棘手的問題,對于很多新的知識都是一知半解,只有在網(wǎng)上或圖書館搜集資料多加理解,然后再向同學(xué)和老師請教,慢慢嘗試,多多練習(xí),一點(diǎn)</p><p>  本次畢業(yè)設(shè)計(jì)花費(fèi)了我大量的精力和時間,但我覺得是值得的,以前我不喜歡動手去操作,不喜歡寫程序,導(dǎo)致我的動手編程能力很差,思維的嚴(yán)密性和靈

112、活性都不夠好,處理問題的方式也不夠好,甚至有點(diǎn)害怕編程,經(jīng)過本次畢業(yè)設(shè)計(jì),很多方面都有較大進(jìn)步,動手能力強(qiáng)了,且對一個項(xiàng)目進(jìn)行開發(fā)時能按照軟件設(shè)計(jì)的思想逐一分析、設(shè)計(jì),能合理安排工程進(jìn)度。通過這次畢業(yè)設(shè)計(jì)使我把以前所學(xué)的零散的知識進(jìn)行了一次大綜合,對軟件開發(fā)也有一個總體的認(rèn)知,讓我不在害怕編程,為以后的軟件開發(fā)打下了堅(jiān)實(shí)的基礎(chǔ)。本次畢業(yè)設(shè)計(jì)過程中,我查閱了很多的資料,所以又進(jìn)一步掌握更多的專業(yè)知識,技能水平也有很大的提高,總之,上機(jī)實(shí)踐

113、對于所有計(jì)算機(jī)專業(yè)的學(xué)生來說都是最重要的,要勤于動手動腦,多想多試才有創(chuàng)新,才有進(jìn)步,才有收獲。</p><p><b>  致 謝</b></p><p>  本次畢業(yè)設(shè)計(jì)從選題、設(shè)計(jì)到確定課題經(jīng)歷了較長時間。在這段時間得到了老師、同學(xué)以及朋友的幫助和支持,在此深表感謝!感謝他們的耐心指導(dǎo)和熱心幫助,很多問題和困難在他們的幫助下迎刃而解,也從他們那里學(xué)到了很多,自

114、己也加強(qiáng)了動手的能力。</p><p>  感謝我的導(dǎo)師**,在百忙之際仍然盡力幫我們解決遇到的問題,給我們講解專業(yè)方面的很多知識,并教我們學(xué)習(xí)的方法,他嚴(yán)謹(jǐn)?shù)墓ぷ髯黠L(fēng)同樣也影響著我們,使我們也養(yǎng)成了嚴(yán)謹(jǐn)?shù)膶W(xué)習(xí)態(tài)度。在畢業(yè)設(shè)計(jì)期間,從開題報(bào)告到畢業(yè)論文,都給了我們很多好的建議,有表揚(yáng),有批評,根據(jù)我們每個人系統(tǒng)的特點(diǎn)提出可以改進(jìn)和完善的地方,讓我們在不斷學(xué)習(xí)中日益進(jìn)步,也鍛煉了我們聯(lián)系實(shí)際的能力,讓我思考問題也更

115、加多元化,讓我們了解到自己所做的系統(tǒng)不僅僅是用來看的,而更要注重它的可操作性和實(shí)用性。從他那里我學(xué)到了更多的是做事和學(xué)習(xí)的態(tài)度問題,以及思考問題的全面性和嚴(yán)謹(jǐn)性,這對以后不論是在學(xué)校還是在工作崗位上都有很大的幫助。</p><p>  “不積跬步無以至千里”,這次畢業(yè)設(shè)計(jì)能夠最終順利完成,歸功于各位老師三年間的認(rèn)真教誨和諄諄教導(dǎo),使我能夠很好的掌握專業(yè)知識,并在畢業(yè)設(shè)計(jì)中得以體現(xiàn)。最后,我向榮成學(xué)院的全體老師們再

116、次表示衷心感謝:謝謝你們。</p><p><b>  參考文獻(xiàn)</b></p><p>  1 顧紹元,李慶華.庫存管理信息系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) .上海鐵道大學(xué)學(xué)報(bào):自然科學(xué)版,1999,17(4).(9~11)</p><p>  2 葉志軍.由淺入深——Java 2自學(xué)教程 .北京:人民郵電出版社,2004.10(13~18)<

溫馨提示

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

評論

0/150

提交評論