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

下載本文檔

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

文檔簡(jiǎn)介

1、<p><b>  畢業(yè)論文/設(shè)計(jì)</b></p><p>  題 目:  _______________________________</p><p>  姓 名: _______________________________</p><p>  系 別: ____________________

2、___________</p><p>  專 業(yè): _______________________________</p><p>  班 級(jí): _______________________________</p><p>  指導(dǎo)老師: ______ ___ _ _ _____ </p><

3、;p>  日 期: _______________________________</p><p>  商品的進(jìn)、銷、存系統(tǒng)的網(wǎng)站設(shè)計(jì)</p><p><b>  摘要</b></p><p>  隨著科學(xué)的不斷進(jìn)步,計(jì)算機(jī)應(yīng)用已經(jīng)遍布整個(gè)社會(huì)的每個(gè)角落。計(jì)算機(jī)在商業(yè)管理上的應(yīng)用,使其逐步系統(tǒng)化、完善化。本文通過(guò)對(duì)商品進(jìn)、銷、

4、存工作流程的深入了解及進(jìn)行了可行性分析后,對(duì)商品進(jìn)、銷、存系統(tǒng)作了系統(tǒng)分析、系統(tǒng)設(shè)計(jì),并完成了系統(tǒng)的開(kāi)發(fā)。本系統(tǒng)采用java語(yǔ)言進(jìn)行開(kāi)發(fā),實(shí)現(xiàn)了較強(qiáng)大的商品進(jìn)庫(kù)處理和商品查詢功能。本系統(tǒng)的優(yōu)點(diǎn)在于簡(jiǎn)單,便于使用,不足之處在于統(tǒng)計(jì)功能不夠完善。</p><p>  [關(guān)鍵詞] java 數(shù)據(jù)庫(kù) 商品銷售 訂單 查詢</p><p><b>  目 錄</b></p

5、><p><b>  前言1</b></p><p>  第一章 系統(tǒng)分析2</p><p>  1.1 需求分析2</p><p>  1.2 可行性分析2</p><p>  1.3 系統(tǒng)功能結(jié)構(gòu)2</p><p>  1.4 系統(tǒng)業(yè)務(wù)流圖3</

6、p><p>  1.5 分層模式4</p><p>  第二章 系統(tǒng)運(yùn)行環(huán)境及系統(tǒng)開(kāi)發(fā)技術(shù)5</p><p>  2.1 系統(tǒng)運(yùn)行環(huán)境環(huán)境4</p><p>  2.2 系統(tǒng)開(kāi)發(fā)技術(shù)4</p><p>  2.2.1 Java簡(jiǎn)介4</p><p>  2.2.2 MySql 數(shù)據(jù)

7、庫(kù)6</p><p>  2.2.3 SSH簡(jiǎn)介6</p><p>  第三章 系統(tǒng)設(shè)計(jì)7</p><p>  3.1 數(shù)據(jù)庫(kù)與數(shù)據(jù)庫(kù)表設(shè)計(jì)7</p><p>  3.1.1 數(shù)據(jù)庫(kù)介紹7</p><p>  3.1.2 E-R圖7</p><p>  3.1.3 數(shù)據(jù)庫(kù)表設(shè)計(jì)

8、8</p><p>  3.2 系統(tǒng)功能模塊設(shè)計(jì)11</p><p>  3.2.1 公共類設(shè)計(jì)11</p><p>  3.2.2 系統(tǒng)登錄模塊設(shè)計(jì)12</p><p>  3.2.3 系統(tǒng)主窗體設(shè)計(jì)13</p><p>  3.2.4 進(jìn)貨單模塊設(shè)計(jì)14</p><p>  3.

9、2.5 銷售單模塊設(shè)計(jì)18</p><p>  3.2.6 庫(kù)存盤(pán)點(diǎn)模塊設(shè)計(jì)21</p><p>  3.2.7 數(shù)據(jù)庫(kù)備份與恢復(fù)模塊設(shè)計(jì)23</p><p>  第四章 系統(tǒng)測(cè)試26</p><p>  4.1 系統(tǒng)軟件測(cè)試26</p><p>  4.1.1 測(cè)試的原則26</p>&l

10、t;p>  4.1.2 模塊測(cè)試26</p><p>  4.1.3 集成測(cè)試27</p><p>  4.2 測(cè)試總結(jié)27</p><p>  4.3 系統(tǒng)實(shí)施與維護(hù)27</p><p><b>  結(jié)論28</b></p><p><b>  參考文獻(xiàn)29</

11、b></p><p><b>  致謝30</b></p><p><b>  前 言</b></p><p>  傳統(tǒng)的商品銷售管理在商品的統(tǒng)計(jì)和管理上不但麻煩,而且還十分的耗費(fèi)人力和時(shí)間。而商品銷售管理系統(tǒng)對(duì)商品的進(jìn)貨、退貨、存貨和銷售情況等進(jìn)行了綜合統(tǒng)計(jì)和管理,使管理人員能夠更快的得到自己想要的信息。<

12、/p><p>  一個(gè)好的商品銷售管理系統(tǒng)首先應(yīng)具備的是基本的信息管理,而商品銷售管理系統(tǒng)不但對(duì)商品信息信息、代理商信息、訂單信息等都進(jìn)行了系統(tǒng)的管理,而且管理人員可以直接登陸系統(tǒng)查看所有的信息,也可以根據(jù)自己的需要搜索相關(guān)的信息。本文對(duì)系統(tǒng)開(kāi)發(fā)中面臨的問(wèn)題及其解決方案進(jìn)行詳細(xì)的設(shè)計(jì)及合理安排,根據(jù)所掌握的java技術(shù)對(duì)系統(tǒng)的各部分功能進(jìn)行了實(shí)現(xiàn)。</p><p><b>  第一章

13、 系統(tǒng)分析</b></p><p><b>  1.1 需求分析</b></p><p>  需求分析的過(guò)程可以說(shuō)是一個(gè)對(duì)具體問(wèn)題的反復(fù)理解和抽象的過(guò)程。理解就是對(duì)現(xiàn)實(shí)問(wèn)題的理解,要弄清楚究竟需要解決什么問(wèn)題。抽象就是出去問(wèn)題的表面,提取問(wèn)題的本質(zhì),建立問(wèn)題的邏輯模型,以便以后階段的系統(tǒng)的設(shè)計(jì)實(shí)現(xiàn)。需求分析階段是軟件產(chǎn)品生存命期的一個(gè)重要階段,其根本任

14、務(wù)四確定用戶對(duì)軟件系統(tǒng)的需求。所謂需求是指用戶對(duì)軟件的功能和性能的要求,就是用戶希望軟件能干什么事情,完成什么樣的功能,達(dá)到什么性能。通常需求分為兩種類型:一種是功能性需求,一種是非功能性需求,這一點(diǎn)也需要有一種清楚的認(rèn)識(shí)。功能性需求是指需要計(jì)算機(jī)系統(tǒng)解決的問(wèn)題,也就是對(duì)數(shù)據(jù)的處理要求,這是一類主要的需求。非功能性需求是指實(shí)際使用環(huán)境所要求的要求,往往是一些限制要求,例如:性能要求,可靠性要求,安全保密要求等等。</p>

15、<p>  根據(jù)用戶方的需求,要求企業(yè)進(jìn)銷存管理系統(tǒng)具有以下功能:</p><p>  界面設(shè)計(jì)美觀大方,操作方便、快捷、靈活。</p><p>  實(shí)現(xiàn)強(qiáng)大的進(jìn)銷存管理,包括基本信息、進(jìn)貨、銷售和庫(kù)存管理。</p><p>  提供數(shù)據(jù)庫(kù)備份與恢復(fù)功能。</p><p><b>  提供庫(kù)存盤(pán)點(diǎn)功能。</b>

16、</p><p>  提供技術(shù)支持的聯(lián)系方式,可以使用郵件進(jìn)行溝通,或者直接連接到技術(shù)網(wǎng)站。</p><p>  1.2 可行性分析</p><p>  企業(yè)進(jìn)銷存管理系統(tǒng)必須提供商品信息、供應(yīng)商信息和客戶信息的基礎(chǔ)設(shè)置;提供強(qiáng)大的搜索功能和商品的進(jìn)貨、銷售和庫(kù)存管理功能。系統(tǒng)還必須保證數(shù)據(jù)的安全性、完整性和準(zhǔn)確性。</p><p>  企

17、業(yè)進(jìn)銷存管理系統(tǒng)的目標(biāo)是實(shí)現(xiàn)企業(yè)的信息化管理,減少盲目采購(gòu)、降低采購(gòu)成本、合理控制庫(kù)存、減少資金占用并提升企業(yè)市場(chǎng)競(jìng)爭(zhēng)力。</p><p>  項(xiàng)目主要以企業(yè)的進(jìn)貨、銷售和查詢統(tǒng)計(jì)功能為主,對(duì)于庫(kù)存、銷售和進(jìn)貨的記錄信息應(yīng)該及時(shí)、準(zhǔn)確的保存,并提供想要的查詢和統(tǒng)計(jì)。由于庫(kù)存商品數(shù)量太多,不易盤(pán)點(diǎn),傳統(tǒng)的盤(pán)點(diǎn)方式容易出錯(cuò),系統(tǒng)中的庫(kù)存盤(pán)點(diǎn)功能要準(zhǔn)確的計(jì)算出各種商品的損益數(shù)量,減少企業(yè)的不必要的損失。</p&g

18、t;<p>  1.3 系統(tǒng)功能結(jié)構(gòu)</p><p>  企業(yè)進(jìn)銷存管理系統(tǒng)功能結(jié)構(gòu)圖如圖1.1所示。</p><p>  圖1.1 企業(yè)進(jìn)銷存管理系統(tǒng)功能結(jié)構(gòu)圖</p><p><b>  系統(tǒng)業(yè)務(wù)流圖</b></p><p>  企業(yè)進(jìn)銷存管理系統(tǒng)業(yè)務(wù)流程</p><p>&l

19、t;b>  圖如圖1.2所示。</b></p><p>  圖1.2 企業(yè)進(jìn)銷存管理系統(tǒng)業(yè)務(wù)流程圖</p><p><b>  分層模式</b></p><p>  本系統(tǒng)是基于B/S模式開(kāi)發(fā)的JAVA EE多層體系結(jié)構(gòu)WEB應(yīng)用。系統(tǒng)開(kāi)發(fā)主要分為以下幾層:表示層、業(yè)務(wù)層、DAO層、持久層。業(yè)務(wù)層和DAO層都通過(guò)接口與其它層進(jìn)

20、行連接從而減小了各層之間的耦合度,實(shí)現(xiàn)高內(nèi)聚、低耦的思想。分層結(jié)構(gòu)圖如下所示:</p><p><b>  圖如圖1.3所示。</b></p><p><b>  圖1.3分層結(jié)構(gòu)圖</b></p><p>  第二章 系統(tǒng)運(yùn)行環(huán)境及系統(tǒng)開(kāi)發(fā)技術(shù)</p><p>  2.1 系統(tǒng)運(yùn)行環(huán)境環(huán)境&l

21、t;/p><p>  硬件環(huán)境,CPU(中央處理器):I3 2330M </p><p>  RAM(內(nèi)存):4G</p><p>  HDD(硬盤(pán)):500G</p><p>  軟件開(kāi)發(fā)環(huán)境,操作系統(tǒng):Windows xp SP3</p><p>  JDK環(huán)境:Java SE Development KIT(JDK)

22、 Version 7</p><p>  開(kāi)發(fā)工具:MyEclipse 9</p><p>  數(shù)據(jù)庫(kù)管理軟件:mysql</p><p>  2.2 系統(tǒng)開(kāi)發(fā)技術(shù)</p><p>  本系統(tǒng)的開(kāi)發(fā)主要是使用在Eclipse平臺(tái)下的Java語(yǔ)言,并結(jié)合了SQL Server 2000數(shù)據(jù)庫(kù)技術(shù),使此系統(tǒng)具有強(qiáng)大的查詢功能。</p>

23、;<p>  服務(wù)器使用:tomcat7.0</p><p>  2.2.1 Java簡(jiǎn)介</p><p>  Java語(yǔ)言是一個(gè)支持網(wǎng)絡(luò)計(jì)算的面向?qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言。Java語(yǔ)言吸收了Smalltalk語(yǔ)言和C++語(yǔ)言的優(yōu)點(diǎn),并增加了其它特性,如支持并發(fā)程序設(shè)計(jì)、網(wǎng)絡(luò)通信、和多媒體數(shù)據(jù)控制等。主要特性如下:</p><p>  (1) Java語(yǔ)言是簡(jiǎn)

24、單的。Java語(yǔ)言的語(yǔ)法與C語(yǔ)言和C++語(yǔ)言很接近,使得大多數(shù)程序員很容易學(xué)習(xí)和使用Java。另一方面,Java丟棄了C++ 中很少使用的、很難理解的、令人迷惑的那些特性,如操作符重載、多繼承、自動(dòng)的強(qiáng)制類型轉(zhuǎn)換。特別地,Java語(yǔ)言不使用指針,并提供了自動(dòng)的廢料收集,使得程序員不必為內(nèi)存管理而擔(dān)憂。</p><p>  (2) Java語(yǔ)言是一個(gè)面向?qū)ο蟮?。Java語(yǔ)言提供類、接口和繼承等原語(yǔ),為了簡(jiǎn)單起見(jiàn),只

25、支持類之間的單繼承,但支持接口之間的多繼承,并支持類與接口之間的實(shí)現(xiàn)機(jī)制(關(guān)鍵字為implements)。Java語(yǔ)言全面支持動(dòng)態(tài)綁定,而C++ 語(yǔ)言只對(duì)虛函數(shù)使用動(dòng)態(tài)綁定??傊?,Java語(yǔ)言是一個(gè)純的面向?qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言。</p><p>  (3) Java語(yǔ)言是分布式的。Java語(yǔ)言支持Internet應(yīng)用的開(kāi)發(fā),在基本的Java應(yīng)用編程接口中有一個(gè)網(wǎng)絡(luò)應(yīng)用編程接口(java.net),它提供了用于網(wǎng)絡(luò)應(yīng)用

26、編程的類庫(kù),包括URL、URLConnection、Socket、 ServerSocket等。Java的RMI(遠(yuǎn)程方法激活)機(jī)制也是開(kāi)發(fā)分布式應(yīng)用的重要手段。</p><p>  (4) Java語(yǔ)言是健壯的。Java的強(qiáng)類型機(jī)制、異常處理、廢料的自動(dòng)收集等是Java程序健壯性的重要保證。對(duì)指針的丟棄是Java的明智選擇。Java的安全檢查機(jī)制使得Java更具健壯性。</p><p>

27、  (5) Java語(yǔ)言是安全的。Java通常被用在網(wǎng)絡(luò)環(huán)境中,為此,Java提供了一個(gè)安全機(jī)制以防惡意代碼的攻擊。除了Java語(yǔ)言具有的許多安全特性以外,Java對(duì)通過(guò)網(wǎng)絡(luò)下載的類具有一個(gè)安全防范機(jī)制(類ClassLoader),如分配不同的名字空間以防替代本地的同名類、字節(jié)代碼檢查,并提供安全管理機(jī)制(類SecurityManager)讓Java應(yīng)用設(shè)置安全哨兵。 </p><p>  (6) Java語(yǔ)言是

28、體系結(jié)構(gòu)中立的。Java程序(后綴為java的文件)在Java平臺(tái)上被編譯為體系結(jié)構(gòu)中立的字節(jié)碼格式(后綴為class的文件), 然后可以在實(shí)現(xiàn)這個(gè)Java平臺(tái)的任何系統(tǒng)中運(yùn)行。這種途徑適合于異構(gòu)的網(wǎng)絡(luò)環(huán)境和軟件的分發(fā)。 </p><p>  (7) Java語(yǔ)言是可移植的。這種可移植性來(lái)源于體系結(jié)構(gòu)中立性,另外,Java還嚴(yán)格規(guī)定了各個(gè)基本數(shù)據(jù)類型的長(zhǎng)度。Java系統(tǒng)本身也具有很強(qiáng)的可移植性,Java編譯器是用

29、Java實(shí)現(xiàn)的,Java的運(yùn)行環(huán)境是用ANSI C實(shí)現(xiàn)的。</p><p>  (8) Java語(yǔ)言是解釋型的。如前所述,Java程序在Java平臺(tái)上被編譯為字節(jié)碼格式, 然后可以在實(shí)現(xiàn)這個(gè)Java平臺(tái)的任何系統(tǒng)中運(yùn)行。在運(yùn)行時(shí),Java平臺(tái)中的Java解釋器對(duì)這些字節(jié)碼進(jìn)行解釋執(zhí)行,執(zhí)行過(guò)程中需要的類在聯(lián)接階段被載入到運(yùn)行環(huán)境中。</p><p>  (9) Java是高性能的。與那些解

30、釋型的高級(jí)腳本語(yǔ)言相比,Java的確是高性能的。事實(shí)上,Java的運(yùn)行速度隨著JIT(Just-In-Time)編譯器技術(shù)的發(fā)展越來(lái)越接近于C++。 </p><p>  (10) Java語(yǔ)言是多線程的。在Java語(yǔ)言中,線程是一種特殊的對(duì)象,它必須由Thread類或其子(孫)類來(lái)構(gòu)造,thread(Runnable) 的構(gòu)造子類將一個(gè)實(shí)現(xiàn)了Runnable接口的對(duì)象包裝成一個(gè)線程,其二,從Thread類派生出

31、子類并重寫(xiě)run方法,使用該子類創(chuàng)建的對(duì)象即為線程。值得注意的是Thread類已經(jīng)實(shí)現(xiàn)了Runnable接口,因此,任何一個(gè)線程均有它的run方法,而run方法中包含了線程所要運(yùn)行的代碼。線程的活動(dòng)由一組方法來(lái)控制。 Java語(yǔ)言支持多個(gè)線程的同時(shí)執(zhí)行,并提供多線程之間的同步機(jī)制(synchronized)。</p><p>  (11) Java語(yǔ)言是動(dòng)態(tài)的。Java語(yǔ)言的設(shè)計(jì)目標(biāo)之一是適應(yīng)于動(dòng)態(tài)變化的環(huán)境。J

32、ava程序需要的類能動(dòng)態(tài)地被載入到運(yùn)行環(huán)境,也可以通過(guò)網(wǎng)絡(luò)來(lái)載入所需要的類。這也有利于軟件的升級(jí)。另外,Java中的類有一個(gè)運(yùn)行時(shí)刻的表示,能進(jìn)行運(yùn)行時(shí)刻的類型檢查。</p><p>  Java語(yǔ)言的優(yōu)良特性使得Java應(yīng)用具有無(wú)比的健壯性和可靠性,這也減少了應(yīng)用系統(tǒng)的維護(hù)費(fèi)用。Java對(duì)對(duì)象技術(shù)的全面支持和Java平臺(tái)內(nèi)嵌的API能縮短應(yīng)用系統(tǒng)的開(kāi)發(fā)時(shí)間并降低成本。Java的編譯一次,到處可運(yùn)行的特性使得它能

33、夠提供一個(gè)隨處可用的開(kāi)放結(jié)構(gòu)和在多平臺(tái)之間傳遞信息的低成本方式。特別是Java企業(yè)應(yīng)用編程接口(Java Enterprise APIs)為企業(yè)計(jì)算及電子商務(wù)應(yīng)用系統(tǒng)提供了有關(guān)技術(shù)和豐富的類庫(kù)。[2]</p><p>  2.2.2 MySql數(shù)據(jù)庫(kù)</p><p>  MySQL是一個(gè)關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),由瑞典MySQL AB公司開(kāi)發(fā),目前屬于Oracle公司。MySQL是一種關(guān)聯(lián)數(shù)據(jù)

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

35、lt;/p><p>  高速:高速是MySQL的顯著特性,在MySQL中,使用了極快的“B樹(shù)”磁盤(pán)表(MyISAM)和索引壓縮;通過(guò)使用優(yōu)化的“單掃描多連接”,能夠?qū)崿F(xiàn)極快的連接;SQL函數(shù)使用高度優(yōu)化的類庫(kù)實(shí)現(xiàn),運(yùn)行速度快。一直以來(lái),高速都是MySQL吸引眾多用戶的特性之一,這一點(diǎn)可能只有親自使用才能體會(huì)。</p><p>  支持多平臺(tái):MySQL支持超過(guò)20種開(kāi)發(fā)平臺(tái),包括Linux、W

36、indows、FreeBSD、IBM AIX、HP-UX、Mac OS、OpenBSD、Solaris等,這使得用戶可以選擇多種平臺(tái)實(shí)現(xiàn)自己的應(yīng)用,并且在不同平臺(tái)上開(kāi)發(fā)的應(yīng)用系統(tǒng)可以很容易在各種平臺(tái)之間進(jìn)行移植。</p><p>  支持各種開(kāi)發(fā)語(yǔ)言:MySQL為各種流行的程序設(shè)計(jì)語(yǔ)言提供支持,為它們提供了很多API函數(shù),包括C、C++、Java、Perl、PHP等。</p><p>  

37、提供多種存儲(chǔ)器引擎:MySQL中提供了多種數(shù)據(jù)庫(kù)存儲(chǔ)引擎,各引擎各有所長(zhǎng),適用于不同的應(yīng)用場(chǎng)合,用戶可以選擇最合適的引擎以得到最高性能。</p><p>  功能強(qiáng)大:強(qiáng)大的存儲(chǔ)引擎使MySQL能夠有效應(yīng)用于任何數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng),高效完成各種任務(wù),無(wú)論是大量數(shù)據(jù)的高速傳輸系統(tǒng),還是每天訪問(wèn)量超過(guò)數(shù)億的高強(qiáng)度的搜索Web站點(diǎn)。MySQL 5是MySQL發(fā)展歷程中的一個(gè)里程碑,使MySQL具備了企業(yè)級(jí)數(shù)據(jù)庫(kù)管理系統(tǒng)的特

38、性,提供強(qiáng)大的功能,例如子查詢、事務(wù)、外鍵、視圖、存儲(chǔ)過(guò)程、觸發(fā)器、查詢緩存等功能。</p><p>  支持大型數(shù)據(jù)庫(kù):InnoDB存儲(chǔ)引擎將InnoDB表保存在一個(gè)表空間內(nèi),該表空間可由數(shù)個(gè)文件創(chuàng)建。這樣,表的大小就能超過(guò)單獨(dú)文件的最大容量。表空間還可以包括原始磁盤(pán)分區(qū),從而使構(gòu)建很大的表成為可能,最大容量可以達(dá)到64TB。</p><p>  安全:靈活和安全的權(quán)限和密碼系統(tǒng),允許基

39、于主機(jī)的驗(yàn)證。連接到服務(wù)器時(shí),所有的密碼傳輸均采用加密形式,從而保證了密碼安全。</p><p>  價(jià)格低廉:MySQL采用GPL許可,很多情況下,用戶可以免費(fèi)使用MySQL;對(duì)于一些商業(yè)用途,需要購(gòu)買(mǎi)MySQL商業(yè)許可,但價(jià)格相對(duì)低廉。</p><p>  2.2.3 SSH簡(jiǎn)介</p><p>  SSH 為 Secure Shell 的縮寫(xiě),由 IETF 的

40、網(wǎng)絡(luò)工作小組(Network Working Group)所制定;SSH 為建立在應(yīng)用層和傳輸層基礎(chǔ)上的安全協(xié)議。SSH 是目前較可靠,專為遠(yuǎn)程登錄會(huì)話和其他網(wǎng)絡(luò)服務(wù)提供安全性的協(xié)議。利用 SSH 協(xié)議可以有效防止遠(yuǎn)程管理過(guò)程中的信息泄露問(wèn)題。S S H最初是U N I X系統(tǒng)上的一個(gè)程序,后來(lái)又迅速擴(kuò)展到其他操作平臺(tái)。S S H在正確使用時(shí)可彌補(bǔ)網(wǎng)絡(luò)中的漏洞。S S H客戶端適用于多種平臺(tái)。幾乎所有U N I X平臺(tái)—包括H P -

41、U X、L i n u x、A I X、S o l a r i s、Digital UNIX、I r i x,以及其他平臺(tái)—都可運(yùn)行S S H。</p><p>  Struts2的體系與Struts1體系的差別非常大,因?yàn)镾truts2使用了WebWork的設(shè)計(jì)核心,而不是Struts1的設(shè)計(jì)核心。Struts2中大量使用攔截器來(lái)處理用戶的請(qǐng)求,從而允許用戶的業(yè)務(wù)邏輯控制器與Servlet API分離?! 

42、truts2框架的大概處理流程如下:  1、加載類(FilterDispatcher)  2、讀取配置(struts配置文件中的Action)  3、派發(fā)請(qǐng)求(客戶端發(fā)送請(qǐng)求)  4、調(diào)用Action(FilterDispatcher從struts配置文件中讀取與之相對(duì)應(yīng)的Action )  5、啟用攔截器(WebWork攔截器鏈自動(dòng)對(duì)請(qǐng)求應(yīng)用通用功能,如驗(yàn)證)  6、處理業(yè)務(wù)(回調(diào)Action的execute()方法) 

43、 7、返回響應(yīng)(通過(guò)execute方法將信息返回到FilterDispatcher)  8、查找響應(yīng)(FilterDispatcher根據(jù)配置查找響應(yīng)的是什么信息如:SUCCESS、ERROR,將跳轉(zhuǎn)到哪個(gè)jsp頁(yè)面)  9、響應(yīng)用戶(jsp--->客戶瀏覽器端顯示)  10、struts2標(biāo)簽庫(kù)(相比</p><p><b>  第三章 系統(tǒng)設(shè)計(jì)</b></p>

44、<p>  3.1 數(shù)據(jù)庫(kù)與數(shù)據(jù)庫(kù)表設(shè)計(jì)</p><p>  3.1.1 數(shù)據(jù)庫(kù)介紹</p><p>  所謂數(shù)據(jù)庫(kù)(Database)就是按一定組織方式存儲(chǔ)在一起,相互相關(guān)的若干數(shù)據(jù)的結(jié)合,數(shù)據(jù)庫(kù)管理系統(tǒng)(Database Management System)就是一種操作和管理數(shù)據(jù)庫(kù)的大型軟件,簡(jiǎn)稱DBMS,他們建立在操作系統(tǒng)的基礎(chǔ)上,對(duì)數(shù)據(jù)庫(kù)進(jìn)行統(tǒng)一的管理和控制,其功能包

45、括數(shù)據(jù)庫(kù)定義,數(shù)據(jù)庫(kù)管理,數(shù)據(jù)庫(kù)的建立和維護(hù),與操作系統(tǒng)通信等。DBMS通常由數(shù)據(jù)字典,數(shù)據(jù)描述語(yǔ)言及其編譯程序,數(shù)據(jù)操縱(查詢)語(yǔ)言極其編譯程序,數(shù)據(jù)庫(kù)管理例行程序等部分組成。</p><p>  關(guān)系數(shù)據(jù)庫(kù)是以關(guān)系模型為基礎(chǔ)的數(shù)據(jù)庫(kù),是根據(jù)表、記錄和字段之間關(guān)系進(jìn)行組織和訪問(wèn)的一種數(shù)據(jù)庫(kù),它通過(guò)若干表(Table)來(lái)存取數(shù)據(jù),并且通過(guò)關(guān)系(Relation)將這些表聯(lián)系在一起,關(guān)系數(shù)據(jù)庫(kù)提供了成為機(jī)構(gòu)化查詢語(yǔ)

46、言(SQL)標(biāo)準(zhǔn)接口,該接口允許使用多種數(shù)據(jù)庫(kù)工具和產(chǎn)品,關(guān)系數(shù)據(jù)庫(kù)是目前最廣泛應(yīng)用的數(shù)據(jù)庫(kù)。</p><p>  3.1.2 E-R圖</p><p>  進(jìn)銷存系統(tǒng)主要實(shí)現(xiàn)從進(jìn)貨、庫(kù)存到銷售的一體化管理,設(shè)計(jì)商品信息、商品的供貨商、購(gòu)買(mǎi)商品的客戶等多個(gè)實(shí)體。下面列舉了關(guān)鍵的實(shí)體和系統(tǒng)的綜合E-R圖。</p><p><b>  供應(yīng)商實(shí)體屬性圖<

47、/b></p><p>  供應(yīng)商實(shí)體包括:編號(hào)、名稱、簡(jiǎn)稱、地址、電話、郵政編碼、傳真、聯(lián)系人、聯(lián)系人電話、開(kāi)戶行和E-mail屬性,如圖3.1所示。</p><p>  圖3.1 供貨商實(shí)體屬性圖</p><p><b>  商品實(shí)體屬性圖</b></p><p>  商品實(shí)體包括:編號(hào)、商品名稱、商品簡(jiǎn)稱、產(chǎn)

48、地、單位、規(guī)格、包裝、批號(hào)、批準(zhǔn)文號(hào)、商品簡(jiǎn)介和供應(yīng)商屬性。如圖3.2所示。</p><p>  圖3.2 商品實(shí)體屬性圖</p><p><b>  客戶實(shí)體屬性圖</b></p><p>  客戶實(shí)體包括:客戶編號(hào)、客戶名稱、簡(jiǎn)稱、地址、電話、郵政編碼、聯(lián)系人電話、傳真、開(kāi)戶行和賬號(hào)屬性。如圖3.3所示。</p><p&

49、gt;  圖3.3 客戶實(shí)體屬性圖</p><p><b>  銷售實(shí)體屬性圖</b></p><p>  銷售實(shí)體分為銷售主表和銷售明細(xì)表兩個(gè)實(shí)體,它們是一對(duì)多的關(guān)系。其中銷售主表包括:銷售票號(hào)、品種數(shù)、金額、驗(yàn)收結(jié)論、客戶名稱、經(jīng)手人、結(jié)算方式、操作員和銷售日期屬性。銷售明細(xì)表包括:編號(hào)、銷售票號(hào)、商品編號(hào)、數(shù)量和單價(jià)屬性。如圖3.4所示。</p>

50、<p>  圖3.4 銷售實(shí)體屬性圖</p><p>  3.1.3 數(shù)據(jù)庫(kù)表設(shè)計(jì)</p><p>  數(shù)據(jù)庫(kù)在整個(gè)管理系統(tǒng)中占據(jù)非常重要的地位,數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)的好壞直接影響著系統(tǒng)的效率和實(shí)現(xiàn)效果。進(jìn)銷存管理系統(tǒng)采用MySql的數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)名稱為db_JXC,因篇幅所限,本論文只給出幾個(gè)重要數(shù)據(jù)表的表結(jié)構(gòu)。</p><p><b>  商品信息

51、表</b></p><p>  商品信息表的名稱為ourck_goods,主要用于存商品的詳細(xì)信息,結(jié)構(gòu)如表3.1所示。</p><p>  表3.1 商品信息表</p><p><b>  商品類型表</b></p><p>  商品類型表的名稱為ourck_goods_types,主要用于存儲(chǔ)商品的詳細(xì)信

52、息,結(jié)構(gòu)如表3.2所示。</p><p>  表3.2 商品類型表</p><p><b>  商品入庫(kù)表</b></p><p>  商品入庫(kù)表的名稱為ourck_stock_order,主要用于存儲(chǔ)入庫(kù)單據(jù)信息,其結(jié)構(gòu)如表3.3所示。</p><p>  表3.3 商品入庫(kù)表</p><p>

53、<b>  商品銷售表</b></p><p>  商品銷售表的名稱為ourck_market_order,主要用于存儲(chǔ)銷售單據(jù)的信息,結(jié)構(gòu)如表3.5所示。</p><p>  表3.5 商品銷售表</p><p>  管理員表 ourck_admin</p><p>  部門(mén)表 ourck_departments<

54、;/p><p><b>  系統(tǒng)功能模塊設(shè)計(jì)</b></p><p><b>  配置文件</b></p><p><b>  Struts2</b></p><p>  <?xml version="1.0" encoding="UTF-8&q

55、uot; ?></p><p>  <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd"></p><p><

56、;b>  <struts></b></p><p>  <constant name="struts.devMode" value="false" /> </p><p>  <constant name="struts.locale" value="zh_CN"

57、;/> </p><p>  <constant name="struts.i18n.encoding" value="UTF-8"/></p><p>  <package name="admin" extends="struts-default"></p>&l

58、t;p>  <action name="findGoodAction" class="goodInfoAction" method="findGoodInfo"></p><p>  <result name="sucess">/admins/main.jsp</result></p&g

59、t;<p><b>  </action></b></p><p>  <action name="loginAction" class="loginAction" method="login"></p><p>  <result type= "chai

60、n" name="success">findGoodAction</result></p><p>  <result name="index">/index.jsp</result></p><p><b>  </action></b></p>&

61、lt;p>  <action name="loginOutAction" class="loginAction" method="loginOut"></p><p>  <result name="index">/index.jsp</result></p><p>

62、<b>  </action></b></p><p>  <action name="updatePasAction" class="adminAction" method="updatePas"></p><p>  <result name="updatePas&

63、quot;>/admins/update_pas.jsp</result></p><p><b>  </action></b></p><p>  <action name="addDepartmentsAction" class="departmentsAction" method=&q

64、uot;addDepartments"></p><p>  <result type= "chain" name="sucess">findDepartmentsAction</result></p><p><b>  </action></b></p>&l

65、t;p>  <action name="departmentsAction" class="departmentsAction"></p><p>  <result name="findDel">/admins/add_dep.jsp</result></p><p>  <res

66、ult type= "chain" name="sucess">findDepartmentsAction</result></p><p><b>  </action></b></p><p>  <action name="findDepartmentsAction"

67、 class="departmentsAction" method="findDepartments"></p><p>  <result name="sucess">/admins/ctrl_dep.jsp</result></p><p><b>  </action>&l

68、t;/b></p><p>  <action name="goodTypeAction" class="goodTypeAction"></p><p>  <result name="sucess">/admins/ctrl_types.jsp</result></p>

69、<p>  <result name="find">/admins/update_types.jsp</result></p><p><b>  </action></b></p><p>  <action name="goodInfoAction" class="

70、;goodInfoAction"></p><p>  <result name="sucess">/admins/ctrl_goods.jsp</result></p><p>  <result name="find">/admins/update_goods.jsp</result>

71、;</p><p>  <result name="addgood">/admins/add_good.jsp</result></p><p><b>  </action></b></p><p>  <action name="stockAction" cl

72、ass="stockAction"></p><p>  <result name="sucess">/admins/ctrl_stocks.jsp</result></p><p>  <result name="addStock">/admins/add_stock.jsp</r

73、esult></p><p><b>  </action></b></p><p>  <action name="marketAction" class="marketAction"></p><p>  <result name="sucess"

74、;>/admins/ctrl_markets.jsp</result></p><p>  <result name="addMarket">/admins/add_market.jsp</result></p><p>  <result name="showMarket">/admins/sh

75、ow_market.jsp</result></p><p><b>  </action></b></p><p>  </package></p><p>  </struts> </p><p>  Hibernate.cfg.xml</p>&l

76、t;p>  <?xml version='1.0' encoding='UTF-8'?></p><p>  <!DOCTYPE hibernate-configuration PUBLIC</p><p>  "-//Hibernate/Hibernate Configuration DTD 3.0//EN"&l

77、t;/p><p>  "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"></p><p>  <!-- Generated by MyEclipse Hibernate Tools. --></p><p>  &

78、lt;hibernate-configuration></p><p>  <session-factory></p><p>  <property name="dialect"></p><p>  org.hibernate.dialect.MySQLDialect</p><p>  

79、</property></p><p>  <property name="connection.url"></p><p>  jdbc:mysql://localhost:3306/ourck</p><p>  </property></p><p>  <property

80、name="connection.username">root</property></p><p>  <property name="connection.password">root</property></p><p>  <property name="connection.driv

81、er_class"></p><p>  com.mysql.jdbc.Driver</p><p>  </property></p><p>  <property name="myeclipse.connection.profile">MySQL</property></p>

82、<p>  <mapping resource="com/yi168/entity/OurckStockOrders.hbm.xml" /></p><p>  <mapping resource="com/yi168/entity/OurckMarketOrders.hbm.xml" /></p><p>  &

83、lt;mapping resource="com/yi168/entity/OurckGoodsInfo.hbm.xml" /></p><p>  <mapping resource="com/yi168/entity/OurckDepartments.hbm.xml" /></p><p>  <mapping resou

84、rce="com/yi168/entity/OurckPermissions.hbm.xml" /></p><p>  <mapping resource="com/yi168/entity/OurckNews.hbm.xml" /></p><p>  <mapping resource="com/yi168/e

85、ntity/OurckAdmins.hbm.xml" /></p><p>  <mapping resource="com/yi168/entity/OurckGoodsTypes.hbm.xml" /></p><p>  </session-factory></p><p>  </hibern

86、ate-configuration></p><p>  applicationContext.xml</p><p>  <?xml version="1.0" encoding="UTF-8"?></p><p><b>  <beans</b></p><

87、p>  xmlns="http://www.springframework.org/schema/beans"</p><p>  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"</p><p>  xmlns:aop="http://www.springframework.

88、org/schema/aop"</p><p>  xmlns:tx="http://www.springframework.org/schema/tx"</p><p>  xsi:schemaLocation="http://www.springframework.org/schema/beans </p><p>  h

89、ttp://www.springframework.org/schema/beans/spring-beans-3.0.xsd</p><p>  http://www.springframework.org/schema/aop </p><p>  http://www.springframework.org/schema/aop/spring-aop-3.0.xsd</p>

90、;<p>  http://www.springframework.org/schema/tx </p><p>  http://www.springframework.org/schema/tx/spring-tx-3.0.xsd"></p><p>  <import resource="classpath:applicationCont

91、ext-action.xml"/></p><p>  <import resource="classpath:applicationContext-service.xml"/></p><p>  <bean id="sessionFactory"</p><p>  class="

92、;org.springframework.orm.hibernate3.LocalSessionFactoryBean"></p><p>  <property name="configLocation"</p><p>  value="classpath:hibernate.cfg.xml"></p>

93、<p>  </property></p><p><b>  </bean></b></p><p><b>  </beans></b></p><p>  applicationContext-action.xml</p><p>  <?

94、xml version="1.0" encoding="UTF-8"?></p><p>  <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"<

95、;/p><p>  xsi:schemaLocation="</p><p>  http://www.springframework.org/schema/beans </p><p>  http://www.springframework.org/schema/beans/spring-beans-3.0.xsd"></p>

96、<p>  <bean name="loginAction" class="com.yi168.action.LoginAction" scope="singleton"></p><p>  <property name="adminsService" ref="adminsService&q

97、uot;/></p><p>  <property name="newsService" ref="newsService"/></p><p>  <property name="departmentsService" ref="departmentsService"/><

98、;/p><p><b>  </bean></b></p><p>  <bean name="adminAction" class="com.yi168.action.AdminAction" scope="singleton"></p><p>  <pr

99、operty name="adminsService" ref="adminsService"/></p><p><b>  </bean></b></p><p>  <bean name="departmentsAction" class="com.yi168.acti

100、on.DepartmentsAction" scope="singleton"></p><p>  <property name="departmentsService" ref="departmentsService"/></p><p><b>  </bean></b

101、></p><p>  <bean name="goodTypeAction" class="com.yi168.action.GoodTypeAction" scope="singleton"></p><p>  <property name="typesService" ref=&

102、quot;goodsTypesService"/></p><p><b>  </bean></b></p><p>  <bean name="goodInfoAction" class="com.yi168.action.GoodsAction" scope="singleton

103、"></p><p>  <property name="infoService" ref="goodsInfoService"/></p><p>  <property name="typesService" ref="goodsTypesService"/><

104、/p><p>  <property name="adminsService" ref="adminsService"/></p><p><b>  </bean></b></p><p>  <bean name="stockAction" class=&

105、quot;com.yi168.action.StockAction" scope="singleton"></p><p>  <property name="ordersService" ref="stockOrdersService"/></p><p>  <property name=&q

106、uot;typesService" ref="goodsTypesService"/></p><p>  <property name="adminsService" ref="adminsService"/></p><p>  <property name="infoService

107、" ref="goodsInfoService"/></p><p><b>  </bean></b></p><p>  <bean name="marketAction" class="com.yi168.action.MarketAction" scope="

108、;singleton"></p><p>  <property name="ordersService" ref="marketOrdersService"/></p><p>  <property name="typesService" ref="goodsTypesService

109、"/></p><p>  <property name="adminsService" ref="adminsService"/></p><p>  <property name="infoService" ref="goodsInfoService"/></p

110、><p><b>  </bean></b></p><p><b>  </beans></b></p><p>  applicationContext-service.xml</p><p>  <?xml version="1.0" encodi

111、ng="UTF-8"?></p><p>  <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"</p><p>  xsi:schemaLoca

112、tion="</p><p>  http://www.springframework.org/schema/beans </p><p>  http://www.springframework.org/schema/beans/spring-beans-3.0.xsd"></p><p>  <bean id="abst

113、ractDao" abstract="true" init-method="init"></p><p>  <property name="sessionFactory" ref="sessionFactory"/></p><p><b>  </bean>

114、 </b></p><p>  <bean name="adminsDAO" class="com.yi168.dao.impl.OurckAdminsDAOImpl" parent="abstractDao"/></p><p>  <bean name="adminsService&qu

115、ot; class="com.yi168.service.impl.OurckAdminsServiceImpl"></p><p>  <property name="adminsDAO" ref="adminsDAO"/></p><p><b>  </bean></b>&

116、lt;/p><p>  <bean name="newsDAO" class="com.yi168.dao.impl.OurckNewsDAOImpl" parent="abstractDao"/></p><p>  <bean name="newsService" class="co

117、m.yi168.service.impl.OurckNewsServiceImpl"></p><p>  <property name="newsDAO" ref="newsDAO"/></p><p><b>  </bean></b></p><p>  &l

118、t;bean name="departmentsDAO" class="com.yi168.dao.impl.OurckDepartmentsDAOImpl" parent="abstractDao"/></p><p>  <bean name="departmentsService" class="com.y

119、i168.service.impl.OurckDepartmentsServiceImpl"></p><p>  <property name="departmentsDAO" ref="departmentsDAO"/></p><p><b>  </bean></b></p&

120、gt;<p>  <bean name="goodsInfoDAO" class="com.yi168.dao.impl.OurckGoodsInfoDAOImpl" parent="abstractDao"/></p><p>  <bean name="goodsInfoService" class

121、="com.yi168.service.impl.OurckGoodsInfoServiceImpl"></p><p>  <property name="goodsInfoDAO" ref="goodsInfoDAO"/></p><p><b>  </bean></b>&

122、lt;/p><p>  <bean name="typesDAO" class="com.yi168.dao.impl.OurckGoodsTypesDAOImpl" parent="abstractDao"></p><p>  <property name="infoService" ref=

123、"goodsInfoService"/></p><p><b>  </bean></b></p><p>  <bean name="goodsTypesService" class="com.yi168.service.impl.OurckGoodsTypesServiceImpl&quo

124、t;></p><p>  <property name="typesDAO" ref="typesDAO"/></p><p><b>  </bean></b></p><p>  <bean name="marketOrdersDAO" cla

125、ss="com.yi168.dao.impl.OurckMarketOrdersDAOImpl" parent="abstractDao"></p><p>  <property name="infoService" ref="goodsInfoService"/></p><p><

126、b>  </bean></b></p><p>  <bean name="marketOrdersService" class="com.yi168.service.impl.OurckMarketOrdersServiceImpl"></p><p>  <property name="m

127、arketOrdersDAO" ref="marketOrdersDAO"/></p><p><b>  </bean></b></p><p>  <bean name="stockOrdersDAO" class="com.yi168.dao.impl.OurckStockOrd

128、ersDAOImpl" parent="abstractDao"></p><p>  <property name="infoService" ref="goodsInfoService"/></p><p><b>  </bean></b></p>

129、<p>  <bean name="stockOrdersService" class="com.yi168.service.impl.OurckStockOrdersServiceImpl"></p><p>  <property name="stockOrdersDAO" ref="stockOrdersDAO

130、"/></p><p><b>  </bean></b></p><p><b>  </beans></b></p><p>  3.2.1 通用類設(shè)計(jì)</p><p>  通用類也是代碼重用的一種形式,他將各個(gè)功能模塊經(jīng)常調(diào)用的方法提取到共用的Java類

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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)論