倉(cāng)庫(kù)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)_第1頁
已閱讀1頁,還剩49頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、<p>  題目:倉(cāng)庫(kù)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)</p><p><b>  倉(cāng)庫(kù)管理系統(tǒng)</b></p><p><b>  摘要</b></p><p>  21世紀(jì)是一個(gè)信息化的時(shí)代,企業(yè)只有敏捷的獲取生產(chǎn)信息和市場(chǎng)信息,才能置身于國(guó)際大舞臺(tái),這就離不開先進(jìn)的企業(yè)管理系統(tǒng)——ERP。而倉(cāng)庫(kù)管理系統(tǒng)正是ERP中一個(gè)

2、最重要的組成部分,也是企業(yè)生產(chǎn)過程的一個(gè)重要組成部分。企業(yè)要在現(xiàn)代化國(guó)內(nèi)外市場(chǎng)取得一席之地,就必須使其倉(cāng)庫(kù)管理體系達(dá)到現(xiàn)代化水平,也即使倉(cāng)庫(kù)管理從原始的手工階段走向方便快捷的計(jì)算機(jī)實(shí)現(xiàn)階段。選擇合理的倉(cāng)庫(kù)管理方法,不僅會(huì)促進(jìn)銷售,改善生產(chǎn)秩序,做到均衡生產(chǎn),而且會(huì)降低庫(kù)存的占用資金,最終使企業(yè)獲得更好的經(jīng)濟(jì)效益。</p><p>  本倉(cāng)庫(kù)管理系統(tǒng)是針對(duì)的實(shí)際需求,從實(shí)際工作出發(fā),在分析目前倉(cāng)庫(kù)管理系統(tǒng)中存在的問

3、題的基礎(chǔ)上,結(jié)合管理信息系統(tǒng)開發(fā)的概念、結(jié)構(gòu)及系統(tǒng)開發(fā)的基本原理和方法,并利用計(jì)算機(jī)運(yùn)算速度快、存儲(chǔ)信息容量大、處理邏輯問題強(qiáng)、功能強(qiáng)大的優(yōu)勢(shì),采用目前流行的B/S結(jié)構(gòu)和流行框架SSH(Struts +Spring+Hibernate)和MVC設(shè)計(jì)模式。通過Internet/Intranet實(shí)現(xiàn)對(duì)物資進(jìn)行管理,特別是對(duì)物資基本信息管理、物資調(diào)配信息等進(jìn)行完整的監(jiān)控而開發(fā)出來的。從查詢與決策信息的管理需求出發(fā),針對(duì)性強(qiáng),功能齊備,旨在通過

4、幫助該庫(kù)存管理實(shí)現(xiàn)信息化、網(wǎng)絡(luò)化,以提高管理的效率。</p><p>  本倉(cāng)庫(kù)管理信息系統(tǒng)主要包括“入庫(kù)管理”、“出庫(kù)管理”、“基本信息管理”和“系統(tǒng)用戶管理”等模塊。它主要對(duì)物資的出入庫(kù)進(jìn)行統(tǒng)計(jì)和核算,及時(shí)準(zhǔn)確地掌握商品庫(kù)存情況,并動(dòng)態(tài)反映物資的增減變動(dòng),為的決策提供基礎(chǔ)數(shù)據(jù)。</p><p>  關(guān)鍵詞:倉(cāng)庫(kù)管理系統(tǒng);B/S;SSH;MVC </p><p>

5、  WMS-Warehouse Management System</p><p><b>  Abstract</b></p><p>  21 century is an informative ERP.Enterprises which could activate in the international community must dependent on

6、 the acquisition of the manufacture and marketing information. This needs advanced enterprise management system---ERP. And warehouse management system is a most important part of ERP.To obtain a place in the inner and in

7、ternational market, the warehouse management system of enterprises must modernize. Namely, the management of warehouse must transmit from primitive handmade stage to </p><p>  How to reduce the cost,improve

8、work efficiency is materials store managers need to solve a practical problem.This material management information system is aimed at the actual demand,from actual conditions, and on the analysis of the current material

9、management information system based on the problems existing in the information system development,management concept,structure and system development,the basic principle and methods,and use of computer operation speed a

10、nd storage capacity and proce</p><p>  This material management information system mainly include "material inventory management",and "material outbound management" and "material&quo

11、t; and "the basic information management system user management",etc.It mainly supplies for the enterprise to make statistics and accounting, timely and accurately grasp the dynamic inventory goods,and reflects

12、 the changes,enterprise or business the decision to provide basic data.</p><p>  Key Words: WMS-Warehouse Management System;B/S;SSH;MVC;目錄</p><p><b>  摘要I</b></p><p>  

13、AbstractII</p><p><b>  目錄1</b></p><p><b>  1 緒論1</b></p><p>  1.1 課題設(shè)計(jì)的背景1</p><p>  1.2 課題設(shè)計(jì)的目的和意義1</p><p>  1.3 課題的主要研究工作2&

14、lt;/p><p>  1.4 論文結(jié)構(gòu)安排2</p><p>  2 課題涉及的關(guān)鍵技術(shù)3</p><p>  2.1 MVC設(shè)計(jì)模式簡(jiǎn)介3</p><p>  2.2 JSP技術(shù)簡(jiǎn)介3</p><p>  2.2.1 JSP工作原理4</p><p>  2.2.2 JSP體系結(jié)構(gòu)

15、4</p><p>  2.2.3 JSP的特點(diǎn)5</p><p>  2.3 SSH框架簡(jiǎn)介5</p><p>  2.3.1 定義5</p><p>  2.3.2 Struts26</p><p>  2.3.3 Spring6</p><p>  2.3.4 Hibernate

16、7</p><p>  2.4 Sql Server數(shù)據(jù)庫(kù)簡(jiǎn)介8</p><p>  2.4.1 SQL Server2005簡(jiǎn)介8</p><p>  2.4.2 “結(jié)構(gòu)化查詢語言”(SQL)簡(jiǎn)介8</p><p>  3 系統(tǒng)需求分析10</p><p>  3.1 可行性分析10</p>

17、<p>  3.1.1 技術(shù)可行性10</p><p>  3.1.2 經(jīng)濟(jì)可行性10</p><p>  3.2 功能需求分析10</p><p>  3.3 數(shù)據(jù)需求分析11</p><p>  3.5 性能需求分析13</p><p>  4 系統(tǒng)概要設(shè)計(jì)14</p>&

18、lt;p>  4.1 系統(tǒng)功能設(shè)計(jì)14</p><p>  4.2 數(shù)據(jù)庫(kù)的設(shè)計(jì)15</p><p>  4.2.1 E-R圖的設(shè)計(jì)15</p><p>  4.2.2 數(shù)據(jù)庫(kù)表的設(shè)計(jì)17</p><p>  5 系統(tǒng)的詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)20</p><p>  5.1 登陸頁面的設(shè)計(jì)與實(shí)現(xiàn)20<

19、/p><p>  5.2 系統(tǒng)安全管理的實(shí)現(xiàn)22</p><p>  5.3 系統(tǒng)用戶管理26</p><p>  5.5 基礎(chǔ)信息維護(hù)27</p><p>  5.5 物資入庫(kù)出庫(kù)管理29</p><p>  5.6 系統(tǒng)配置時(shí)的一些關(guān)鍵代碼31</p><p>  5.6.1 Stru

20、ts.xml配置31</p><p>  5.6.2 web.xml配置34</p><p>  6 系統(tǒng)測(cè)試37</p><p>  6.1 測(cè)試概述37</p><p>  6.2 數(shù)據(jù)庫(kù)測(cè)試37</p><p>  6.3 測(cè)試實(shí)例38</p><p><b>  

21、7 總結(jié)41</b></p><p><b>  參考文獻(xiàn)42</b></p><p><b>  致 謝43</b></p><p>  畢業(yè)設(shè)計(jì)(論文)知識(shí)產(chǎn)權(quán)聲明44</p><p>  畢業(yè)設(shè)計(jì)(論文)獨(dú)創(chuàng)性聲明45</p><p><b

22、>  附 錄46</b></p><p><b>  1 緒論</b></p><p>  1.1 課題設(shè)計(jì)的背景</p><p>  當(dāng)今社會(huì)是一個(gè)信息社會(huì),一個(gè)知識(shí)經(jīng)濟(jì)時(shí)代。自世界上第一臺(tái)計(jì)算機(jī)ENINC(Electronic numerical integrator and calculator)于1946年在美國(guó)問

23、世到現(xiàn)在,計(jì)算機(jī)業(yè)飛速發(fā)展,技術(shù)淘汰指標(biāo)高的驚人,價(jià)格下降以及軟件應(yīng)用的快速擴(kuò)展引發(fā)了以信息處理計(jì)算機(jī)化為標(biāo)志的“微機(jī)革命”,隨之而來的是以全球信息網(wǎng)絡(luò)普及和全球信息共享為標(biāo)志的“全球信息網(wǎng)絡(luò)革命”的蓬勃興起??梢?,世界已進(jìn)入在計(jì)算機(jī)信息管理領(lǐng)域中激烈競(jìng)爭(zhēng)的時(shí)代,計(jì)算機(jī)已經(jīng)變得普通得不能再普通的工具,如同我們離不開的自行車、汽車一樣。</p><p>  隨著企業(yè)規(guī)模的擴(kuò)大,管理信息系統(tǒng)也發(fā)揮越來越重要的作用。作

24、為企業(yè)管理信息系統(tǒng)關(guān)鍵組成部分的倉(cāng)庫(kù)管理系統(tǒng)的應(yīng)用給企業(yè)帶來巨大的效益。采用倉(cāng)庫(kù)管理系統(tǒng)將使企業(yè)改變其傳統(tǒng)的手工記錄模式,應(yīng)用數(shù)據(jù)庫(kù)技術(shù)使海量數(shù)據(jù)的存儲(chǔ)與處理成為很方便的事情,這樣可大幅縮短主要業(yè)務(wù)流程的處理時(shí)間,提高對(duì)市場(chǎng)的響應(yīng)能力。</p><p>  “物流服務(wù)最初起源于軍事上的運(yùn)用”,“物流”這一概念起源于二戰(zhàn)期間的美國(guó),英文稱之為L(zhǎng)ogistics或者Physical Distribution,前者的使

25、用率更高一些。物流一詞最早被描述為泛指軍隊(duì)運(yùn)輸、補(bǔ)給和屯駐,后來被廣泛用來描述商品實(shí)體的物理性流通活動(dòng),成為流通經(jīng)濟(jì)學(xué)中的術(shù)語。</p><p>  隨著經(jīng)濟(jì)的全球化以及中國(guó)經(jīng)濟(jì)改革的逐漸深化,各面臨著越來越多激烈的競(jìng)爭(zhēng)。我們應(yīng)該承認(rèn),誰掌握的知識(shí)多,信息量大,信息處理速度快,批量大,誰的效率就高,誰就能在各種競(jìng)爭(zhēng)中立于不敗之地。庫(kù)存管理是一般工業(yè)、商業(yè)生產(chǎn)管理環(huán)節(jié)中重要的一環(huán),所以,有效地進(jìn)行物資基本信息管理、

26、物資調(diào)配信息等進(jìn)行完整的監(jiān)控已經(jīng)成為了各生存和發(fā)展的頭等要事。</p><p>  本倉(cāng)庫(kù)管理信息系統(tǒng)就是在這樣的信息技術(shù)廣泛應(yīng)用的時(shí)代背景下,本著用戶的需求,借助于現(xiàn)代化的管理方法和信息技術(shù)開發(fā)出來的。</p><p>  1.2 課題設(shè)計(jì)的目的和意義</p><p>  基于給管理者與物資創(chuàng)造一個(gè)能夠及時(shí)進(jìn)行信息交互的平臺(tái),倉(cāng)庫(kù)管理系統(tǒng)就孕育而生了,希望通過它可

27、以將管理者和物資緊密相連起來,實(shí)現(xiàn)便捷管理的目標(biāo)。該系統(tǒng)繼承了傳統(tǒng)的管理方法使得管理者更加便捷、迅速、準(zhǔn)確的掌握倉(cāng)庫(kù)信息,通過該倉(cāng)庫(kù)管理系統(tǒng)得到信息的反饋,同時(shí)也可以進(jìn)行一系列的操作來對(duì)物資進(jìn)行入庫(kù)和出庫(kù)等信息登記。這大大的縮短了工作時(shí)間,且提高了工作效率。倉(cāng)庫(kù)管理系統(tǒng)的投入,將使倉(cāng)庫(kù)的管理更加正規(guī)化,為產(chǎn)品的出入庫(kù)管理部</p><p>  門和銷售部門提供了方便,降低了倉(cāng)庫(kù)的損耗。企業(yè)可以對(duì)售出的產(chǎn)品進(jìn)行跟蹤

28、服務(wù),同時(shí)也免去了銷售人員按以往慣例親自前往用戶處去核實(shí)貨物情況的麻煩,提高了辦事效率,節(jié)省了費(fèi)用,而且還避免了不必要的業(yè)務(wù)糾紛,維護(hù)了企業(yè)長(zhǎng)期與用戶建立的良好信譽(yù)。</p><p>  1.3 課題的主要研究工作</p><p>  該系統(tǒng)采用了現(xiàn)在技術(shù)界很流行的Java語言來做開發(fā)實(shí)現(xiàn),運(yùn)用各種性能均良好的數(shù)據(jù)庫(kù)MYSQL,頁面流行語言JSP,主流的三個(gè)框架SSH(Struts+Spr

29、ing+Hibernate),熱門的設(shè)計(jì)模式MVC。將整個(gè)系統(tǒng)有機(jī)的聯(lián)系起來,使其運(yùn)行流暢,簡(jiǎn)單易懂。Java不僅是一個(gè)很好的編程工具還是一個(gè)很好的平臺(tái),封裝性非常好,良好的面向?qū)ο缶幊趟枷?,Sqlserver關(guān)系型數(shù)據(jù)庫(kù)的優(yōu)勢(shì),加上安全性能好,使系統(tǒng)的可用性大大提高了。</p><p>  1.4 論文結(jié)構(gòu)安排</p><p>  本論文以標(biāo)準(zhǔn)的倉(cāng)庫(kù)管理模式為藍(lán)本,根據(jù)軟件工程的理論,開

30、發(fā)出基于Java EE的適用于中小單的位倉(cāng)庫(kù)管理系統(tǒng)。</p><p>  論文首先研究了系統(tǒng)開發(fā)的可行性,然后進(jìn)行了需求分析,并將需求分析以文檔的形式反饋給用戶,并和用戶進(jìn)行交流進(jìn)一步確認(rèn)需求,然后根據(jù)需求分析采用了結(jié)構(gòu)化分析方法進(jìn)行了系統(tǒng)分析設(shè)計(jì),并進(jìn)行了數(shù)據(jù)庫(kù)的建模工作,根據(jù)模型構(gòu)建了數(shù)據(jù)庫(kù)。后臺(tái)數(shù)據(jù)庫(kù)采用SqlServer2005完成?;陂_放的開發(fā)架構(gòu)Java EE,實(shí)現(xiàn)了系統(tǒng)登錄模塊、主窗口模塊、倉(cāng)庫(kù)

31、人員管理模塊、入庫(kù)模塊、出庫(kù)模塊等。最后對(duì)全文進(jìn)行了總結(jié),對(duì)今后的工作提出了展望</p><p>  本論文共有七章,具體組織如下:</p><p>  第一章:通過分析,提出倉(cāng)庫(kù)管理系統(tǒng)開發(fā)的目的和意義,此次研究的主要任務(wù),以及本次論文的組織。</p><p>  第二章:主要介紹開發(fā)本系統(tǒng)所采用的相關(guān)技術(shù)。</p><p>  第三章:系

32、統(tǒng)需求分析,在此章節(jié)主要進(jìn)行用戶需求分析和性能需求分析以及系統(tǒng)開發(fā)環(huán)境的要求。</p><p>  第四章:系統(tǒng)概要設(shè)計(jì),在這個(gè)階段要得到數(shù)據(jù)庫(kù)的設(shè)計(jì)以及系統(tǒng)整個(gè)流和每個(gè)功能模塊的設(shè)計(jì)。</p><p>  第五章:系統(tǒng)的詳細(xì)設(shè)計(jì)與實(shí)現(xiàn),主要通過界面形式展現(xiàn)出來。</p><p>  第六章:進(jìn)行系統(tǒng)測(cè)試包括測(cè)試的任務(wù)及目標(biāo)、測(cè)試方案和測(cè)試用例。</p>

33、<p>  第七章:對(duì)全文以及整個(gè)系統(tǒng)的實(shí)現(xiàn)過程進(jìn)行了總結(jié),給出了系統(tǒng)設(shè)計(jì)的體會(huì)與收獲。</p><p>  2 課題涉及的關(guān)鍵技術(shù)</p><p>  2.1 MVC設(shè)計(jì)模式簡(jiǎn)介</p><p>  MVC(Model-View-Controller),即模型、視圖、控制器。它是Java應(yīng)用中比較熱門的一種編程思想,通過將一個(gè)應(yīng)用的輸入、處理、輸出

34、的應(yīng)用程序進(jìn)行分離,使得這樣一個(gè)應(yīng)用被分為三層--模型層、視圖層、控制層,從而使得整個(gè)應(yīng)用清晰化、簡(jiǎn)潔化,更易于程序員編碼。該模式的關(guān)系狀態(tài)圖如下2.1所示:</p><p>  圖2.1 MVC狀態(tài)關(guān)系圖</p><p><b>  該模型的優(yōu)點(diǎn):</b></p><p>  1)MVC具備多個(gè)視圖對(duì)應(yīng)一個(gè)模型的能力。在目前用戶需求的快速變化

35、下,</p><p>  可能有多種方式訪問應(yīng)用的要求。</p><p>  2)模型返回的數(shù)據(jù)不帶任何顯示格式,因而這些模型也可直接應(yīng)用于面向</p><p><b>  接口編程。</b></p><p>  3)一個(gè)應(yīng)用被分離為三層,有些情況下只需改變其中一層就能滿足應(yīng)用的</p><p>

36、  改變。控制層可以包含用戶請(qǐng)求權(quán)限的控制。</p><p>  4)有利于軟件工程化管理。由于不同的層各司其職,每一層不同的應(yīng)用具</p><p>  有某些相同的特征,有利于通過工具產(chǎn)生并管理程序代碼。</p><p><b>  該模型的缺點(diǎn):</b></p><p>  它增加了系統(tǒng)結(jié)構(gòu)和實(shí)現(xiàn)的復(fù)雜性、視圖域控制

37、器間連接往往過于緊密、試圖對(duì)模型數(shù)據(jù)訪問效率降低等。</p><p>  2.2 JSP技術(shù)簡(jiǎn)介</p><p>  JSP(Java Server Page服務(wù)器網(wǎng)頁)是從1998年開始出現(xiàn)的新技術(shù)。由Sun公</p><p>  司倡導(dǎo)、許多公司參與一起建立的一種動(dòng)態(tài)網(wǎng)頁技術(shù)標(biāo)準(zhǔn),是基于JavaServlet</p><p>  以及整個(gè)

38、Java體系的web開發(fā)技術(shù)。在傳統(tǒng)的網(wǎng)頁HTML文件(*.htm,*.html)中加入腳本片段和JSP標(biāo)記(Tag),構(gòu)成JSP網(wǎng)頁(*.jsp)。JSP技術(shù)為創(chuàng)建顯示動(dòng)態(tài)生成內(nèi)容的web頁面提供了簡(jiǎn)便的方法。JSP作為Java家族的一員,承襲了Java的特點(diǎn),即跨平臺(tái)的特性,也即一次編譯,到處運(yùn)行。</p><p>  在國(guó)外,己經(jīng)大量使用JSP作為網(wǎng)絡(luò)應(yīng)用程序的開發(fā)工具,而在國(guó)內(nèi),盡管JSP還不是主流開發(fā)技

39、術(shù),但是由于JSP的強(qiáng)大優(yōu)勢(shì),許多網(wǎng)站都已經(jīng)準(zhǔn)備轉(zhuǎn)向JSP,利用JSP來開發(fā)動(dòng)態(tài)網(wǎng)站。 </p><p>  2.2.1 JSP工作原理</p><p>  JSP是面向服務(wù)器的,因此支持任何瀏覽器。當(dāng)Web服務(wù)器和JSP引擎遇到訪問JSP網(wǎng)頁的請(qǐng)求時(shí),JSP引擎將請(qǐng)求對(duì)象發(fā)送給服務(wù)器端的相關(guān)組件,比如JavaBean組件、Servlet或EJB等,然后由服務(wù)器端組件處理這些請(qǐng)示,可能需要

40、從數(shù)據(jù)庫(kù)或數(shù)據(jù)存儲(chǔ)中檢索信息,然后服務(wù)器端組件再將響應(yīng)對(duì)象返回JSP引擎。JSP引擎將響應(yīng)對(duì)象傳遞給JSP頁面,根據(jù)JSP頁面的HTML格式完成數(shù)據(jù)編排,最后Web服務(wù)器和JSP引擎將格式化后的JSP頁面以HTML格式返回客戶瀏覽器。這就是當(dāng)前網(wǎng)站構(gòu)建中廣泛采用的瀏覽器——Web服務(wù)器——后臺(tái)數(shù)據(jù)庫(kù)的三層架構(gòu)模式。因?yàn)镴SP所有程序操作都在服務(wù)器端執(zhí)行,網(wǎng)絡(luò)上傳送給客戶端的僅是得到的結(jié)果。</p><p>  2

41、.2.2 JSP體系結(jié)構(gòu)</p><p>  JSP網(wǎng)站開發(fā)標(biāo)準(zhǔn)給出了兩種使用JSP的技術(shù),可以歸納為模式一、模式二。</p><p>  模式一:JSP+JavaBeans技術(shù)在這種模式中,JSP頁面獨(dú)自響應(yīng)請(qǐng)求并將處理結(jié)果返回給客戶。Bean處理所有數(shù)據(jù)訪問,JSP實(shí)現(xiàn)頁面的表現(xiàn),以實(shí)現(xiàn)內(nèi)容生成與顯示相分離。當(dāng)處理復(fù)雜的大型應(yīng)用時(shí),頁面被嵌入大量的腳本或Java代碼段,當(dāng)需要處理的商業(yè)

42、邏輯復(fù)雜時(shí),這種情況會(huì)變得非常糟糕,大量的內(nèi)嵌代碼使得頁面程序變得復(fù)雜,對(duì)于前端界面設(shè)計(jì)人員,這是不可思議的事情。所以模式一可用于小型應(yīng)用,不能夠滿足大型應(yīng)用的需要。</p><p>  模式二:JSP+Servlet+JavaBeans技術(shù)Servlet技術(shù)是一種采用Java技術(shù)來實(shí)現(xiàn)CGI功能的一種技術(shù),Servlet技術(shù)非常適于服務(wù)器端的處理和編程,并且Servlet會(huì)長(zhǎng)期駐留在內(nèi)存。</p>

43、<p>  從開發(fā)的觀點(diǎn)看,模式二具有更清晰的頁面表現(xiàn),清楚的開發(fā)者角色劃分,在大規(guī)模項(xiàng)目開發(fā)中,模式二更被采用,模式二也更符合當(dāng)前流行的MVC結(jié)構(gòu)(Model/view/controller),其中Servlet對(duì)應(yīng)controller,處于控制者的位置,處理HTTP請(qǐng)求,負(fù)責(zé)生成JSP中使用的Beans組件或?qū)ο螅⑴袛鄳?yīng)將請(qǐng)求傳遞給哪個(gè)JSP等,JSP對(duì)應(yīng)view,負(fù)責(zé)生成最終的動(dòng)態(tài)網(wǎng)頁并返回給瀏覽器。而JavaBea

44、ns對(duì)應(yīng)的是Model,實(shí)現(xiàn)各個(gè)具體的應(yīng)用邏輯與功能。</p><p>  2.2.3 JSP的特點(diǎn)</p><p><b>  簡(jiǎn)化的頁面生成技術(shù)</b></p><p>  JSP頁面用標(biāo)準(zhǔn)的HTML或XML命令來處理頁面的格式化和布局設(shè)計(jì),而用類似HTML、XML的標(biāo)記和Java語言編寫的腳本程序生成頁面內(nèi)容。這使得頁面形式與頁面內(nèi)容互相

45、獨(dú)立,非常有利于大型項(xiàng)目的分工合作。</p><p>  與Java平臺(tái)有機(jī)集成</p><p>  JSP技術(shù)是Java 2平臺(tái)的重要組成部分,JSP使用Java語言作為它的腳本語言。在JSP頁面中可以使用幾乎所有的Java組件和Java API,這就能充分發(fā)揮出Java語言的強(qiáng)大功能。使用JSP技術(shù)可以創(chuàng)建具有高度可伸縮性和可靠性的Web應(yīng)用程序。</p><p&g

46、t;  硬件平臺(tái)和服務(wù)器無關(guān)性</p><p>  JSP作為Java家族的一員,秉承了Java技術(shù)的“一次編寫,隨處可用(Write Once,Rum Anywhere)”的特性,可以運(yùn)行于大多數(shù)流行的操作系統(tǒng)平臺(tái)及Web服務(wù)器,這種與服務(wù)器硬件和操作系統(tǒng)平臺(tái)的無關(guān)性是JSP相對(duì)于其它動(dòng)態(tài)網(wǎng)頁技術(shù)最大的一個(gè)優(yōu)點(diǎn)。</p><p><b>  功能可擴(kuò)展性</b>&l

47、t;/p><p>  如同Microsoft的JSP技術(shù)可以通過ActiveX/COM組件來擴(kuò)展功能一樣,JSP可以通過JavaBean和EJB(Enterprise JavaBean)以及自定義的標(biāo)記來擴(kuò)展功能。</p><p>  JSP可以通過JDBC,與諸如Oracle、SQL Server這樣的大型關(guān)系數(shù)據(jù)庫(kù)進(jìn)行連接。</p><p>  JSP提供了一些隱含

48、對(duì)象。這些隱含對(duì)象在JSP頁面中可以直接引用,而不必首先聲明。利用JSP提供的這些隱含對(duì)象,可以使腳本功能更加強(qiáng)大,并且編程更加容易、方便。例如,利用request對(duì)象,可以很容易地接收用戶在HTML表單中提交的信息。</p><p>  2.3 SSH框架簡(jiǎn)介</p><p><b>  2.3.1 定義</b></p><p>  集成SS

49、H框架的系統(tǒng)從職責(zé)上分為四層:表示層、業(yè)務(wù)邏輯層、數(shù)據(jù)持久層和域模塊層,以幫助開發(fā)人員在短期內(nèi)搭建結(jié)構(gòu)清晰、可復(fù)用性好、維護(hù)方便的Web應(yīng)用程序。其中使用Struts作為系統(tǒng)的整體基礎(chǔ)架構(gòu),負(fù)責(zé)MVC的分離,在Struts框架的模型部分,控制業(yè)務(wù)跳轉(zhuǎn),利用Hibernate框架對(duì)持久層提供支持,Spring做管理,管理Struts和Hibernate。具體做法是:用面向?qū)ο蟮姆治龇椒ǜ鶕?jù)需求提出一些模型,將這些模型實(shí)現(xiàn)為基本的Java對(duì)

50、象,然后編寫基本的DAO(Data Access Objects)接口,并給出Hibernate的DAO實(shí)現(xiàn),采用Hibernate架構(gòu)實(shí)現(xiàn)的DAO類來實(shí)現(xiàn)Java類與數(shù)據(jù)庫(kù)之間的轉(zhuǎn)換和訪問,最后由Spring做管理,管理Struts和Hibernate。</p><p>  系統(tǒng)的基本業(yè)務(wù)流程是:在表示層中,首先通過JSP頁面實(shí)現(xiàn)交互界面,負(fù)責(zé)接收請(qǐng)求(Request)和傳送響應(yīng)(Response),然后Str

51、uts根據(jù)配置文件(struts-config.xml)將ActionServlet接收到的Request委派給相應(yīng)的Action處理。在業(yè)務(wù)層中,管理服務(wù)組件的Spring IoC容器負(fù)責(zé)向Action提供業(yè)務(wù)模型(Model)組件和該組件的協(xié)作對(duì)象數(shù)據(jù)處理(DAO)組件完成業(yè)務(wù)邏輯,并提供事務(wù)處理、緩沖池等容器組件以提升系統(tǒng)性能和保證數(shù)據(jù)的完整性。而在持久層中,則依賴于Hibernate的對(duì)象化映射和數(shù)據(jù)庫(kù)交互,處理DAO組件請(qǐng)求的

52、數(shù)據(jù),并返回處理結(jié)果。</p><p>  采用上述開發(fā)模型,不僅實(shí)現(xiàn)了視圖、控制器與模型的徹底分離,而且還實(shí)現(xiàn)了業(yè)務(wù)邏輯層與持久層的分離。這樣無論前端如何變化,模型層只需很少的改動(dòng),并且數(shù)據(jù)庫(kù)的變化也不會(huì)對(duì)前端有所影響,大大提高了系統(tǒng)的可復(fù)用性。而且由于不同層之間耦合度小,有利于團(tuán)隊(duì)成員并行工作,大大提高了開發(fā)效率。</p><p>  2.3.2 Struts2</p>

53、<p>  Struts對(duì)Model,View和Controller都提供了對(duì)應(yīng)的組件。</p><p>  ActionServlet,這個(gè)類是Struts的核心控制器,負(fù)責(zé)攔截來自用戶的請(qǐng)求。</p><p>  Action,這個(gè)類通常由用戶提供,該控制器負(fù)責(zé)接收來自ActionServlet的請(qǐng)求,并根據(jù)該請(qǐng)求調(diào)用模型的業(yè)務(wù)邏輯方法處理請(qǐng)求,并將處理結(jié)果返回給JSP頁面顯

54、示。</p><p><b>  Model部分:</b></p><p>  由ActionForm和JavaBean組成,其中ActionForm用于將用戶的請(qǐng)求參數(shù)封裝成ActionForm對(duì)象,該對(duì)象被ActionServlet轉(zhuǎn)發(fā)給Action,Action根據(jù)ActionForm里面的請(qǐng)求參數(shù)處理用戶的請(qǐng)求。</p><p>  J

55、avaBean則封裝了底層的業(yè)務(wù)邏輯,包括數(shù)據(jù)庫(kù)訪問等。</p><p><b>  View部分:</b></p><p>  該部分采用JSP(或HTML、PHP……)實(shí)現(xiàn)。</p><p>  Struts提供了豐富的標(biāo)簽庫(kù),通過標(biāo)簽庫(kù)可以減少腳本的使用,自定義的標(biāo)簽庫(kù)可以實(shí)現(xiàn)與Model的有效交互,并增加了現(xiàn)實(shí)功能。對(duì)應(yīng)上圖的JSP部分

56、。</p><p>  Controller組件:</p><p>  Controller組件有兩個(gè)部分組成——系統(tǒng)核心控制器,業(yè)務(wù)邏輯控制器。</p><p>  系統(tǒng)核心控制器,對(duì)應(yīng)上圖的ActionServlet。該控制器繼承了HttpServlet類,因此可以配置成標(biāo)注的Servlet。該控制器負(fù)責(zé)攔截所有的HTTP請(qǐng)求,然后根據(jù)用戶請(qǐng)求決定是否要轉(zhuǎn)給業(yè)務(wù)

57、邏輯控制器。</p><p>  業(yè)務(wù)邏輯控制器,負(fù)責(zé)處理用戶請(qǐng)求,本身不具備處理能力,而是調(diào)用Model來完成處理。對(duì)應(yīng)Action部分。</p><p>  2.3.3 Spring</p><p>  Spring是一個(gè)開源框架,它由Rod Johnson創(chuàng)建。它是為了解決企業(yè)應(yīng)用開發(fā)的復(fù)雜性而創(chuàng)建的。Spring使用基本的JavaBean來完成以前只可能由E

58、JB完成的事情。然而,Spring的用途不僅限于服務(wù)器端的開發(fā)。從簡(jiǎn)單性、可測(cè)試性和松耦合的角度而言,任何Java應(yīng)用都可以從Spring中受益。</p><p>  目的:解決企業(yè)應(yīng)用開發(fā)的復(fù)雜性。</p><p>  功能:使用基本的JavaBean代替EJB,并提供了更多的企業(yè)應(yīng)用功能。</p><p>  范圍:任何Java應(yīng)用。</p>&l

59、t;p>  簡(jiǎn)單來說,Spring是一個(gè)輕量級(jí)的控制反轉(zhuǎn)(IoC)和面向切面(AOP)的容器框架。</p><p>  輕量——從大小與開銷兩方面而言Spring都是輕量的。完整的Spring框架可以在一個(gè)大小只有1MB多的JAR文件里發(fā)布。并且Spring所需的處理開銷也是微不足道的。此外,Spring是非侵入式的:典型地,Spring應(yīng)用中的對(duì)象不依賴于Spring的特定類。</p>&l

60、t;p>  控制反轉(zhuǎn)——Spring通過一種稱作控制反轉(zhuǎn)(IoC)的技術(shù)促進(jìn)了松耦合。當(dāng)應(yīng)用了IoC,一個(gè)對(duì)象依賴的其它對(duì)象會(huì)通過被動(dòng)的方式傳遞進(jìn)來,而不是這個(gè)對(duì)象自己創(chuàng)建或者查找依賴對(duì)象。你可以認(rèn)為IoC與JNDI相反——不是對(duì)象從容器中查找依賴,而是容器在對(duì)象初始化時(shí)不等對(duì)象請(qǐng)求就主動(dòng)將依賴傳遞給它。</p><p>  面向切面——Spring提供了面向切面編程的豐富支持,允許通過分離應(yīng)用的業(yè)務(wù)邏輯與

61、系統(tǒng)級(jí)服務(wù)(例如審計(jì)(auditing)和事務(wù)(transaction)管理)進(jìn)行內(nèi)聚性的開發(fā)。應(yīng)用對(duì)象只實(shí)現(xiàn)它們應(yīng)該做的——完成業(yè)務(wù)邏輯——僅此而已。它們并不負(fù)責(zé)(甚至是意識(shí))其它的系統(tǒng)級(jí)關(guān)注點(diǎn),例如日志或事務(wù)支持。</p><p>  容器——Spring包含并管理應(yīng)用對(duì)象的配置和生命周期,在這個(gè)意義上它是一種容器,你可以配置你的每個(gè)bean如何被創(chuàng)建——基于一個(gè)可配置原型(prototype),你的bean

62、可以創(chuàng)建一個(gè)單獨(dú)的實(shí)例或者每次需要時(shí)都生成一個(gè)新的實(shí)例——以及它們是如何相互關(guān)聯(lián)的。然而,Spring不應(yīng)該被混同于傳統(tǒng)的重量級(jí)的EJB容器,它們經(jīng)常是龐大與笨重的,難以使用。</p><p>  框架——Spring可以將簡(jiǎn)單的組件配置、組合成為復(fù)雜的應(yīng)用。在Spring中,應(yīng)用對(duì)象被聲明式地組合,典型地是在一個(gè)XML文件里。Spring也提供了很多基礎(chǔ)功能(事務(wù)管理、持久化框架集成等等),將應(yīng)用邏輯的開發(fā)留給

63、了你。</p><p>  所有Spring的這些特征使你能夠編寫更干凈、更可管理、并且更易于測(cè)試的代碼。它們也為Spring中的各種模塊提供了基礎(chǔ)支持。</p><p>  2.3.4 Hibernate</p><p>  Hibernate是一個(gè)開放源代碼的對(duì)象關(guān)系映射框架,它對(duì)JDBC進(jìn)行了非常輕量級(jí)的對(duì)象封裝,使得Java程序員可以隨心所欲的使用對(duì)象編程思

64、維來操縱數(shù)據(jù)庫(kù)。Hibernate可以應(yīng)用在任何使用JDBC的場(chǎng)合,既可以在Java的客戶端程序使用,也可以在Servlet/JSP的Web應(yīng)用中使用,最具革命意義的是,Hibernate可以在應(yīng)用EJB的J2EE架構(gòu)中取代CMP,完成數(shù)據(jù)持久化的重任。</p><p>  Hibernate的核心接口一共有5個(gè),分別為:Session、SessionFactory、Transaction、Query和Confi

65、guration。這5個(gè)核心接口在任何開發(fā)中都會(huì)用到。通過這些接口,不僅可以對(duì)持久化對(duì)象進(jìn)行存取,還能夠進(jìn)行事務(wù)控制。下面對(duì)這五個(gè)核心接口分別加以介紹。</p><p>  Session接口:Session接口負(fù)責(zé)執(zhí)行被持久化對(duì)象的CRUD操作(CRUD的任務(wù)是完成與數(shù)據(jù)庫(kù)的交流,包含了很多常見的SQL語句。)。但需要注意的是Session對(duì)象是非線程安全的。同時(shí),Hibernate的session不同于JSP

66、應(yīng)用中的HttpSession。這里當(dāng)使用session這個(gè)術(shù)語時(shí),其實(shí)指的是Hibernate中的session,而以后會(huì)將HttpSession對(duì)象稱為用戶session。</p><p>  SessionFactory接口:SessionFactory接口負(fù)責(zé)初始化Hibernate。它充當(dāng)數(shù)據(jù)存儲(chǔ)源的代理,并負(fù)責(zé)創(chuàng)建Session對(duì)象。這里用到了工廠模式。需要注意的是SessionFactory并不是輕

67、量級(jí)的,因?yàn)橐话闱闆r下,一個(gè)項(xiàng)目通常只需要一個(gè)SessionFactory就夠,當(dāng)需要操作多個(gè)數(shù)據(jù)庫(kù)時(shí),可以為每個(gè)數(shù)據(jù)庫(kù)指定一個(gè)SessionFactory。</p><p>  Configuration接口:Configuration接口負(fù)責(zé)配置并啟動(dòng)Hibernate,創(chuàng)建SessionFactory對(duì)象。在Hibernate的啟動(dòng)的過程中,Configuration類的實(shí)例首先定位映射文檔位置、讀取配置,

68、然后創(chuàng)建SessionFactory對(duì)象。</p><p>  Transaction接口:Transaction接口負(fù)責(zé)事務(wù)相關(guān)的操作。它是可選的,開發(fā)人員也可以設(shè)計(jì)編寫自己的底層事務(wù)處理代碼。</p><p>  Query和Criteria接口:Query和Criteria接口負(fù)責(zé)執(zhí)行各種數(shù)據(jù)庫(kù)查詢。它可以使用HQL語言或SQL語句兩種表達(dá)方式。</p><p&g

69、t;  2.4 Sql Server數(shù)據(jù)庫(kù)簡(jiǎn)介</p><p>  2.4.1 SQL Server2005簡(jiǎn)介</p><p>  SQL SERVER 是Microsoft在關(guān)系數(shù)據(jù)庫(kù)管系統(tǒng)(RDBMS)方面的開發(fā)成果。其主要目的是盡可能快地存儲(chǔ)、管理和檢索大量數(shù)據(jù)。我們將使用SQL SERVER存儲(chǔ)與知識(shí)系統(tǒng)網(wǎng)站相關(guān)的所有信息,這些信息會(huì)由應(yīng)用程序邏輯動(dòng)態(tài)放置在網(wǎng)頁中。</p&

70、gt;<p>  SQL Server是Microsoft 公司推出的SQL Server 數(shù)據(jù)庫(kù)管理系統(tǒng)的最新版本該版本繼承了SQL Server 7.0 版本的優(yōu)點(diǎn)同時(shí)又比它增加了許多更先進(jìn)的功能具有使用方便可伸縮性好與相關(guān)軟件集成程度高等優(yōu)點(diǎn)可跨越從運(yùn)行Microsoft Windows 2000 的膝上型電腦到運(yùn)行Microsoft Windows XP的大型多處理器的服務(wù)器等多種平臺(tái)使用。</p>

71、<p>  2.4.2 “結(jié)構(gòu)化查詢語言”(SQL)簡(jiǎn)介</p><p>  SQL全稱是“結(jié)構(gòu)化查詢語言(Structured Query Language)”,最早是IBM的圣約瑟研究實(shí)驗(yàn)室為其關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)SYSTEM R開發(fā)的一種查詢語言,它的前身是SQUARE語言。SQL語言結(jié)構(gòu)簡(jiǎn)潔,功能強(qiáng)大,簡(jiǎn)單易學(xué),所以自從IBM公司1981年推出以來,SQL語言得到了廣泛的應(yīng)用。目前,SQL語言已被

72、確定為關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)的國(guó)際標(biāo)準(zhǔn),被絕大多數(shù)商品化關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)采用,如Oracle、Sybase、DB2、Informix、SQL Server這些數(shù)據(jù)庫(kù)管理系統(tǒng)都支持SQL語言作為查詢語言。</p><p>  結(jié)構(gòu)化查詢語言SQL是一種介于關(guān)系代數(shù)與關(guān)系演算之間的語言,其功能包括查詢、操縱、定義和控制四個(gè)方面,是一個(gè)通用的功能極強(qiáng)的關(guān)系數(shù)據(jù)庫(kù)標(biāo)準(zhǔn)語言。在SQL語言中不需要告訴SQL如何訪問數(shù)據(jù)庫(kù),只要告訴SQ

73、L需要數(shù)據(jù)庫(kù)做什么。</p><p>  SQL廣泛地被采用正說明了它的優(yōu)點(diǎn),使全部用戶,包括應(yīng)用程序員、DBA管理員和終端用戶受益非淺。</p><p><b>  3 系統(tǒng)需求分析</b></p><p><b>  3.1 可行性分析</b></p><p>  所謂開發(fā)的可行性,就是指在整

74、個(gè)系統(tǒng)開發(fā)工程中,解決“做什么”的問題,把要解決哪些問題,滿足用戶哪些具體的信息需求調(diào)查分析清楚,從邏輯上或說從信息處理的功能需求上提出系統(tǒng)的方案,即邏輯模型,為下一階段進(jìn)行物理方案設(shè)計(jì),解決怎么辦提供依據(jù)。它是信息開發(fā)系統(tǒng)中的一個(gè)重要階段,是建立系統(tǒng)模型的第一步。其核心是目標(biāo)分析與需求分析,最后提出系統(tǒng)的邏輯方案。</p><p>  3.1.1 技術(shù)可行性</p><p>  該系統(tǒng)所

75、需硬件設(shè)備,如服務(wù)器、PC機(jī)、打印機(jī)及網(wǎng)絡(luò)配件等,這些設(shè)備在性能上已經(jīng)有了很大提高,價(jià)格又相對(duì)較低,能滿足系統(tǒng)功能需求。軟件上,操作系統(tǒng)采用WINDOWSXP,數(shù)據(jù)庫(kù)管理系統(tǒng)采用SQL SERVER,這些軟件在MIS開發(fā)中已被大量應(yīng)用,技術(shù)上都比較成熟。本系統(tǒng)采用WEB技術(shù)來實(shí)現(xiàn),使用JSP可以創(chuàng)建動(dòng)態(tài)、交互的Web服務(wù)器應(yīng)用程序,JSP頁面可以使用腳本語言(如Vbscript、Javascript等)因此技術(shù)上是可行的。</p&

76、gt;<p>  3.1.2 經(jīng)濟(jì)可行性</p><p>  倉(cāng)庫(kù)管理系統(tǒng)屬于一個(gè)工具型的系統(tǒng),它可以節(jié)省工作人員大量數(shù)據(jù)收集、錄入、整理、查詢、修改等手工操作,而且迅速準(zhǔn)確,能夠極大地提高工作效率,最大限度的降低用戶和管理員的工作量,使庫(kù)存管理盡量簡(jiǎn)便,同時(shí)促進(jìn)業(yè)務(wù)的規(guī)范化、程序化,及時(shí)給各級(jí)領(lǐng)導(dǎo)提供必要的信息統(tǒng)計(jì)。系統(tǒng)開發(fā)所需的費(fèi)用是比較低的,由于系統(tǒng)并不復(fù)雜,其運(yùn)行與培訓(xùn)費(fèi)用也不會(huì)占用很多資金

77、,可以預(yù)見系統(tǒng)完成后可以帶來較大的經(jīng)濟(jì)效益。</p><p>  綜上所述,實(shí)施MIS在技術(shù)上、經(jīng)濟(jì)上都是可行的,因此,開發(fā)倉(cāng)庫(kù)管理系統(tǒng)是可行的。</p><p>  3.2 功能需求分析</p><p>  需求分析主要是對(duì)收集到的需求進(jìn)行提煉、分析和仔細(xì)審查,以確保所有的風(fēng)險(xiǎn)承擔(dān)者都明白其含義并找出其中的錯(cuò)誤、遺漏和其他不足的地方形成完整的分析模型。</p

78、><p>  長(zhǎng)期以來,庫(kù)存管理工作中的信息管理是采用人工的方式,要付出大量人力,</p><p>  填寫各種表格、憑證、賬冊(cè)、卡片和文件。由于信息是隨著時(shí)間不斷變化的,各業(yè)務(wù)部門對(duì)信息的使用要求也各不相同,所以要按照不同的分類經(jīng)常不斷地匯</p><p>  總、統(tǒng)計(jì),往往要做許多重復(fù)登記和轉(zhuǎn)抄。這種手工操作的管理方式,不僅浪費(fèi)人力,而且存在許多缺點(diǎn):</p&

79、gt;<p>  1)處理速度慢,影響信息及時(shí)性。</p><p>  2)易出現(xiàn)錯(cuò)誤,影響信息精確性。</p><p><b>  3)不便于查詢。</b></p><p>  4)缺乏綜合性,不能起控制作用。</p><p>  由于這些缺點(diǎn),大大降低了信息的利用價(jià)值,顯然越來越不適應(yīng)現(xiàn)代庫(kù)存管理工作的

80、需要。因此,發(fā)展以電子計(jì)算機(jī)為基礎(chǔ)的倉(cāng)庫(kù)管理系統(tǒng)已是十分迫切和必要。</p><p>  為了將庫(kù)存管理納入規(guī)范化、現(xiàn)代化管理的軌道,針對(duì)現(xiàn)有庫(kù)存管理中存在的問題和管理的實(shí)際需要,我們將理順管理體制、建立各種管理規(guī)范與開發(fā)信息系統(tǒng)有機(jī)地結(jié)合起來。通過建立專門的倉(cāng)庫(kù)管理系統(tǒng)來實(shí)施對(duì)物資進(jìn)行統(tǒng)一管理。所以,為了順應(yīng)用戶需求,特推出了基于WEB的倉(cāng)庫(kù)管理系統(tǒng)。</p><p>  倉(cāng)庫(kù)管理系統(tǒng)需

81、要實(shí)現(xiàn)系統(tǒng)用戶管理,基礎(chǔ)數(shù)據(jù)管理,物資出庫(kù)(入庫(kù))等幾個(gè)部分功能,下面分別闡述這幾個(gè)部分的功能需求。</p><p>  1)系統(tǒng)用戶管理模塊</p><p>  用戶的添加:可以對(duì)用戶添加,從而實(shí)現(xiàn)其它用戶來訪問系統(tǒng)的權(quán)限。</p><p>  用戶的刪除:進(jìn)行的用戶過期用戶的刪除,從而節(jié)省存儲(chǔ)空間。</p><p>  2)基礎(chǔ)數(shù)據(jù)管理模

82、塊</p><p>  物資信息的管理:進(jìn)行物資添加、修改、刪除、查找操作。</p><p>  供應(yīng)商信息的管理:進(jìn)行供應(yīng)商的添加、修改、刪除、查找操作。</p><p>  3)物資出庫(kù)(入庫(kù))管理模塊</p><p>  物資入庫(kù):進(jìn)行基本的物資入庫(kù)操作。</p><p>  物資出庫(kù):進(jìn)行基本的物資出庫(kù)操作。&

83、lt;/p><p>  物資查看:可以查看倉(cāng)庫(kù)里面的物資信息。</p><p>  庫(kù)存報(bào)警:當(dāng)存儲(chǔ)達(dá)到一定數(shù)量時(shí)提醒用戶,用戶可以進(jìn)行相關(guān)的操作。</p><p>  3.3 數(shù)據(jù)需求分析</p><p>  通過前面對(duì)系統(tǒng)功能需求的分析,可以了解到倉(cāng)庫(kù)管理系統(tǒng)主要實(shí)現(xiàn)的功能,包括基本信息維護(hù)、入庫(kù)信息記錄、出庫(kù)信息記錄、物資信息查詢和系統(tǒng)用戶

84、管理。</p><p>  倉(cāng)庫(kù)管理系統(tǒng)所涉及的主要數(shù)據(jù)包括庫(kù)存記錄、入庫(kù)記錄、出庫(kù)記錄、庫(kù)存物資和用戶記錄,下面分別分析這些數(shù)據(jù)需求。</p><p><b>  1)庫(kù)存記錄</b></p><p>  庫(kù)存記錄是物資管理中建立的庫(kù)存基本信息。</p><p>  庫(kù)存基本信息供庫(kù)存入庫(kù)、庫(kù)存出庫(kù)和庫(kù)存管理使用,即整

85、個(gè)庫(kù)存管理信息系統(tǒng)的數(shù)據(jù)是以庫(kù)存記錄為基礎(chǔ)的。</p><p><b>  2)入庫(kù)記錄</b></p><p>  入庫(kù)記錄是物資入庫(kù)的信息,在進(jìn)行物資入庫(kù)登記時(shí),需要記錄是物資信息,負(fù)責(zé)人,入庫(kù)時(shí)間。</p><p>  入庫(kù)記錄由庫(kù)存產(chǎn)生,需要用到庫(kù)存基本信息,形成的入庫(kù)信息可以在庫(kù)存管理中使用。</p><p>

86、<b>  3)出庫(kù)記錄</b></p><p>  出庫(kù)記錄是庫(kù)存出庫(kù)的信息,與入庫(kù)類似,在進(jìn)行物資出庫(kù)記錄時(shí),也要記錄庫(kù)存信息,負(fù)責(zé)人,出庫(kù)時(shí)間以。</p><p><b>  4)庫(kù)存物資</b></p><p>  庫(kù)存物資是動(dòng)態(tài)的出倉(cāng)庫(kù)物資信息,它可以通過入庫(kù)記錄和出庫(kù)記錄的總匯數(shù)據(jù)得到。當(dāng)需要查看庫(kù)存時(shí),只要按

87、照各種庫(kù)存統(tǒng)計(jì)其累計(jì)入庫(kù)和累計(jì)出庫(kù),累計(jì)出庫(kù)和累計(jì)入庫(kù)的差就是庫(kù)存數(shù)量。</p><p>  物資管理中只要使用物資基本信息,物資入庫(kù)信息和物資出庫(kù)信息,然后通過簡(jiǎn)單地加工處理,就可以形成庫(kù)存物資數(shù)據(jù)。</p><p><b>  5)用戶記錄</b></p><p>  用戶記錄是用戶管理中建立的用戶基本信息??梢圆榭吹降卿涍^的用戶的登錄日子

88、。</p><p><b>  6)庫(kù)存報(bào)警</b></p><p>  當(dāng)庫(kù)存到了一定的程度就無法再繼續(xù)進(jìn)行物資入庫(kù)了,系統(tǒng)將會(huì)自動(dòng)進(jìn)行庫(kù)存報(bào)警功能。</p><p>  通過對(duì)系統(tǒng)數(shù)據(jù)需求的分析,可以得到如下圖3.1所示的系統(tǒng)數(shù)據(jù)流圖。該圖簡(jiǎn)明地表示了倉(cāng)庫(kù)管理系統(tǒng)的主要數(shù)據(jù)流向。</p><p>  圖3.1系統(tǒng)數(shù)據(jù)

89、流圖</p><p>  3.5 性能需求分析</p><p>  根據(jù)畢業(yè)設(shè)計(jì)倉(cāng)庫(kù)管理系統(tǒng)的需求進(jìn)行開發(fā)設(shè)計(jì),主要實(shí)現(xiàn)如下目標(biāo):界面設(shè)計(jì)友好、美觀、大方、數(shù)據(jù)要準(zhǔn)確、安全、可靠。強(qiáng)大查詢功能,方便用戶瀏覽自己課程的相關(guān)信息。設(shè)計(jì)用戶登陸功能,保證用戶個(gè)人信息的安全性。實(shí)現(xiàn)對(duì)物資等信息的添加、修改,便于更改。系統(tǒng)最大限度地實(shí)現(xiàn)易維護(hù)性和易操作性。操作簡(jiǎn)易,實(shí)用性強(qiáng)。因此操作的簡(jiǎn)易實(shí)用性就體

90、現(xiàn)的尤其重要,在此系統(tǒng)的開發(fā)中就很好的體現(xiàn)了這一點(diǎn)。本系統(tǒng)的界面美觀、典雅、充滿了人性化,用戶操作起來也容易上手。對(duì)于一個(gè)倉(cāng)庫(kù)管理系統(tǒng)系統(tǒng)而言測(cè)評(píng)信息是很多的,而且存儲(chǔ)量大,所以對(duì)系統(tǒng)的安全性有比較高的要求;對(duì)于數(shù)據(jù)庫(kù),要設(shè)置不同用戶的權(quán)限,數(shù)據(jù)的修改必須由合法用戶操作;數(shù)據(jù)的添加、修改必須是合法的有效的。</p><p>  下面對(duì)系統(tǒng)的性能方面做了一些規(guī)定如下:</p><p>  數(shù)

91、據(jù)精確度:輸出結(jié)果為雙精度。</p><p><b>  時(shí)間特性:</b></p><p>  1)連接服務(wù)器時(shí)間 3毫秒;</p><p>  2)更新處理時(shí)間為24小時(shí);</p><p>  3)服務(wù)器連接速度20488 Kbps ;</p><p>  4)運(yùn)行時(shí)間30秒;</p&g

92、t;<p><b>  4 系統(tǒng)概要設(shè)計(jì)</b></p><p>  4.1 系統(tǒng)功能模塊設(shè)計(jì)</p><p>  系統(tǒng)后臺(tái)主要是,普通用戶在系統(tǒng)后臺(tái)可以看到自己的基本信息,維護(hù)自己的信息,可看到倉(cāng)庫(kù)信息,物資信息,系統(tǒng)超級(jí)管理員可以對(duì)系統(tǒng)中用戶的角色,權(quán)限和用戶進(jìn)行增刪改的操作,系統(tǒng)管理員是對(duì)物資的添加、修改、供應(yīng)商管理以及登陸信息,主要功能。<

93、;/p><p>  在對(duì)本系統(tǒng)進(jìn)行了需求分析,如下是各個(gè)系統(tǒng)的功能設(shè)計(jì)。</p><p>  表4.1 系統(tǒng)功能模塊設(shè)計(jì)</p><p>  由上述系統(tǒng)的功能模塊設(shè)計(jì)可以得到如圖4.1所示的系統(tǒng)功能模塊圖。</p><p>  圖4.1 系統(tǒng)功能模塊圖</p><p>  在得到系統(tǒng)功能模塊圖之后分析得到,用戶還需要權(quán)限管

94、理,如圖4.2是權(quán)限管理功能模塊圖。</p><p>  圖4.2權(quán)限管理功能模塊圖</p><p>  4.2 數(shù)據(jù)庫(kù)的設(shè)計(jì)</p><p>  4.2.1 E-R圖的設(shè)計(jì)</p><p>  根據(jù)需求分析,系統(tǒng)中涉及到的實(shí)體主要有:用戶,供應(yīng)商,物資。</p><p>  用戶實(shí)體有用戶名、密碼、地址、年齡、級(jí)別、

95、電話屬性,從而得到如下的用戶實(shí)體屬性圖,如圖4.3所示。</p><p>  圖4.3 用戶實(shí)體屬性圖</p><p>  供應(yīng)商實(shí)體有供應(yīng)商名稱、地址、供應(yīng)商編碼、聯(lián)系電話、Email屬性,如下是供應(yīng)商實(shí)體的屬性圖,如圖4.4所示。</p><p>  圖4.4 供應(yīng)商實(shí)體屬性圖</p><p>  物資實(shí)體有物資編號(hào)、物資單價(jià)、物資名稱和

96、數(shù)量屬性,如下是物資實(shí)體屬性圖,如圖4.5所示。</p><p>  圖4.5 物資實(shí)體屬性圖</p><p>  用戶、物資和供應(yīng)商三個(gè)之間也存在著相關(guān)聯(lián)系,物資和用戶對(duì)應(yīng)關(guān)系為n對(duì)n的關(guān)系,物資和供應(yīng)商對(duì)應(yīng)關(guān)系為1對(duì)n的關(guān)系。這樣一來就得到了用戶、物資和供應(yīng)商三個(gè)實(shí)體之間的E-R圖,如圖4.6所示。</p><p>  圖4.6 總體E-R圖</p>

97、<p>  4.2.2 數(shù)據(jù)庫(kù)表的設(shè)計(jì)</p><p>  1)用戶表 表名:t_user,結(jié)構(gòu)如下表4.2所示。</p><p><b>  表4.2 用戶表</b></p><p>  2)物資表 表名:t_wuzi,結(jié)構(gòu)如下表4.3所示。</p><p><b>  表4.3 物資表<

98、/b></p><p>  3)供應(yīng)商表 表名:t_server,結(jié)構(gòu)如下4.4所示。</p><p><b>  表4.4 供應(yīng)商表</b></p><p>  4)物資入庫(kù)表 表名:t-inku,結(jié)構(gòu)如下4.4所示。</p><p>  表4.4 物資入庫(kù)表</p><p>  5)物資

99、出庫(kù)表 表名:t-outku,結(jié)構(gòu)如下4.5所示。s</p><p>  表4.5 物資出庫(kù)表</p><p>  6)用戶日志表 表名:t_log,結(jié)構(gòu)如下4.6所示。</p><p>  表4.6 物資出庫(kù)表</p><p>  5 系統(tǒng)的詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)</p><p>  5.1 登陸頁面的設(shè)計(jì)與實(shí)現(xiàn)</

100、p><p>  此界面是本系統(tǒng)的主界面用戶進(jìn)入后臺(tái)管理的唯一通道,輸入正確的用戶名、密碼確認(rèn)無誤后點(diǎn)擊登入按鈕,即可跳轉(zhuǎn)到相應(yīng)的界面。如果用戶信息輸入錯(cuò)誤,則給出提示,重新輸入正確信息登陸系統(tǒng)。實(shí)現(xiàn)過程如圖5.1所示。</p><p>  圖5.1 登陸模塊流程圖</p><p>  1)該部分實(shí)現(xiàn)的核心代碼:</p><p>  <scr

101、ipt language="javascript"></p><p>  function check()</p><p>  { </p><p>  if(doc

102、ument.ThisForm.username.value=="")</p><p><b>  {</b></p><p>  alert("請(qǐng)輸入用戶名");</p><p>  document.ThisForm.username.focus();</p><p>  ret

103、urn false;</p><p><b>  }</b></p><p>  if(document.ThisForm.password.value=="")</p><p><b>  {</b></p><p>  alert("請(qǐng)輸入密碼");<

104、;/p><p>  document.ThisForm.password.focus();</p><p>  return false; }}function aa()</p><p>  { </p><p><b>  }</b></p><p><b>  aa

105、();</b></p><p><b>  </script></b></p><p>  2)登錄過濾器filter</p><p>  public class safeFileter implements Filter {</p><p>  public void destroy()<

106、;/p><p><b>  {</b></p><p><b>  }</b></p><p>  public void doFilter(ServletRequest arg0, ServletResponse arg1,FilterChain arg2) throws IOException, ServletExcep

107、tion </p><p><b>  {</b></p><p>  HttpServletRequest request=(HttpServletRequest)arg0;</p><p>  HttpServletResponse response=(HttpServletResponse)arg1;</p><p&g

108、t;  if(request.getSession().getAttribute("admin")==null)</p><p><b>  {</b></p><p>  String path=request.getContentType();</p><p>  response.sendRedirect(path+&

109、quot;/error1.html");</p><p><b>  }</b></p><p><b>  else</b></p><p>  {arg2.doFilter(request,response);</p><p><b>  }</b></p&

110、gt;<p><b>  }</b></p><p>  /*web.xml的配置</p><p><b>  <filter></b></p><p>  <filter-name>safeFileter</filter-name></p><p&g

111、t;  <filter-class>com.bookstore.util.safeFilter</filter-class></p><p><b>  </filter></b></p><p>  <filter-mapping></p><p>  <filter-name>sa

112、feFileter</filter-name></p><p>  <url-pattern>/jsp</url-pattern></p><p>  </filter-mapping>*/</p><p>  public void init(FilterConfig arg0) throws ServletExc

113、eption </p><p><b>  {</b></p><p><b>  }}</b></p><p>  3)陸界面運(yùn)行時(shí)的效果實(shí)現(xiàn)</p><p><b>  圖5.2 登陸界面</b></p><p>  用戶進(jìn)入登陸界面后,會(huì)清楚地看到

114、后臺(tái)管理給出的各個(gè)功能模塊。該用戶登陸后的界面及其功能實(shí)現(xiàn)如圖5.3所示。</p><p>  圖5.3 登陸后的主界面</p><p>  5.2 系統(tǒng)安全管理的實(shí)現(xiàn)</p><p>  系統(tǒng)登陸成功后進(jìn)入系統(tǒng)管理界面,在此可以進(jìn)行用戶安全的管理,通過密碼的修改來實(shí)現(xiàn)。</p><p>  圖5.4 系統(tǒng)安全管理模塊流程圖</p>

115、;<p>  圖5.5 系統(tǒng)安全管理運(yùn)行界面</p><p><b>  安全管理核心代碼:</b></p><p>  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"></p><p><b>  <ht

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論