工廠倉庫管理系統(tǒng)的設(shè)計與實現(xiàn)概要_第1頁
工廠倉庫管理系統(tǒng)的設(shè)計與實現(xiàn)概要_第2頁
工廠倉庫管理系統(tǒng)的設(shè)計與實現(xiàn)概要_第3頁
工廠倉庫管理系統(tǒng)的設(shè)計與實現(xiàn)概要_第4頁
工廠倉庫管理系統(tǒng)的設(shè)計與實現(xiàn)概要_第5頁
已閱讀5頁,還剩29頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、1 緒論隨著社會經(jīng)濟的不斷發(fā)展,各個企業(yè)也面臨著各種機遇和挑戰(zhàn)。為了能夠在這個 信息化的時代繼續(xù)發(fā)展下去,就必須緊跟上時代的腳步。隨著網(wǎng)絡(luò)技術(shù)的不斷發(fā)展, 現(xiàn)代物流技術(shù)也在不斷的更新?lián)Q代。 傳統(tǒng)的人工記載的辦公方法已經(jīng)無法滿足很多企 業(yè)的需要,因此,每個企業(yè)都需要一個自動化的倉庫管理系統(tǒng)。倉庫是每個企業(yè)都必 須謹慎管理的地方,因為貨物是企業(yè)最基本的本錢,只有很好地管理好自己企業(yè)的貨 物,才能在競爭如此激烈的社會中謀得一片天地。本課題正是根據(jù)這一理念,開發(fā)了 一個功能比較完善,基本能滿足企業(yè)要求的倉庫管理系統(tǒng)。1.1 系統(tǒng)開發(fā)背景隨著計算機技術(shù)的發(fā)展,一個嶄新的信息化的世界已經(jīng)展現(xiàn)在我們眼前。如

2、今, 你可以隨處看到很多不同種類的信息管理系統(tǒng)。商品是企業(yè)的根本,倉庫是企業(yè)用來保存商品的地方。因此,倉庫對于企業(yè)十分 重要。所以說一個成功的企業(yè)必定會有一個好的倉庫,而一個好的倉庫就肯定會有一 個先進的倉庫管理系統(tǒng)作為支撐。但是,傳統(tǒng)簡單、靜態(tài)的倉庫管理系統(tǒng),因為其不 具備信息共享功能,且無法保證貨物的正確的進庫、庫存控制和發(fā)貨等問題,已經(jīng)無 法確保企業(yè)資源的高效利用;而且,傳統(tǒng)的倉庫管理系統(tǒng)存在維護困難、開發(fā)復(fù)雜等 缺點,極大的浪費企業(yè)的人力、物力,因此已經(jīng)跟不上時代的步伐。所以說,一個成 功的企業(yè)需要一個現(xiàn)代的倉庫管理系統(tǒng)來保證企業(yè)產(chǎn)品的精細化管理, 保證最大化利 用企業(yè)資源。1.2 系

3、統(tǒng)開發(fā)目的 倉庫是所有企業(yè)都不可缺少的部分,因此,一個企業(yè)想要蓬勃發(fā)展,管理好自己 的倉庫就顯得十分重要。但是倉庫中的貨物總是不斷變動的,因此,就需要有人將倉庫中貨物的增減情況進行記錄。但是傳統(tǒng)的人工記錄的方法存在著許多問題,比如信 息安全行性低、查詢效率低等。因此,對于一個想要不斷發(fā)展的企業(yè)來說,這種人工 記錄的方式必須淘汰。隨著計算機技術(shù)的不斷發(fā)展,計算機的使用已經(jīng)十分普遍,每個企業(yè)都擁有計算 機。使用計算機對庫存信息進行管理有著很多人工記錄所無法比擬的優(yōu)點,比如查詢 快捷、信息安全性高、添加刪除方便等?;谝陨线@些原因,我開發(fā)了一個倉庫管理系統(tǒng)。本系統(tǒng)能夠保證貨物的正確的 進庫、庫存控制

4、和發(fā)貨。并且,系統(tǒng)維護簡單,不需要動用太多的人力、物力,可以 有效的幫助企業(yè)管理好倉庫。1.3 系統(tǒng)開發(fā)平臺本系統(tǒng)采用 B/S 的三層架構(gòu),系統(tǒng)使用 MyEclipse 開發(fā)工具,基于 J2EE 平臺, 采用MVC開發(fā)模式,JSP、Struts技術(shù),選用SQL Server 2000 作為系統(tǒng)的數(shù)據(jù)庫 平臺。1.3.1 MyEclipse全名 MyEclipse Enterprise Workbench ,簡稱 MyEclipse 。 M yEclips e 企 業(yè)級工作平臺是對 Eclipse IDE 的擴展,利用它我們可以極大的提高在數(shù)據(jù)庫和 J2EE 的開發(fā)、發(fā)布,以及應(yīng)用程序服務(wù)器整合

5、方面的工作效率。它是功能豐富的 J2EE 集成開發(fā)環(huán)境,包括了完備的編碼功能、調(diào)試功能、測試功能、發(fā)布功能等, 完整支持 HTML 、 Struts 、 JSP、 CSS、 Javascript 、 SQL、 Hibernate 等框架。1.3.2 JSP 技術(shù)JSP 技術(shù)是主流 Web 開發(fā)技術(shù)中使用最為廣泛的一種, 它是由 Sun 公司推出的 一款基于 Java 語言的 Web 開發(fā)技術(shù)。在 Sun 公司的倡導(dǎo)下,許多公司都參與到了 JSP 的開發(fā)之中, 使得 JSP 成為了動態(tài)網(wǎng)頁技術(shù)的標(biāo)準(zhǔn)。 JSP 技術(shù)不僅繼承了 Java 語言的強大功能,可以方便的開發(fā)出先進、安全和跨平臺的電子商務(wù)

6、系統(tǒng),而且還擁 有Java Servlet的穩(wěn)定性,并可以使用Servlet提供API。JSP是目前比較熱門的一 款 Web 網(wǎng)頁開發(fā)技術(shù),由它開發(fā)出的系統(tǒng)具有良好的擴充性,實用性較高。JSP 技術(shù)使用 Java 編程語言編寫類 XML 的 tags 和 scriptlets 來封裝動態(tài)網(wǎng)頁 產(chǎn)生的處理邏輯。 JSP 技術(shù)將網(wǎng)頁的設(shè)計和顯示與網(wǎng)頁邏輯分離開來, 并且設(shè)計成支 持可重用的基于組件,這些功能極大的提高了基于 Web 的應(yīng)用程序的開發(fā)效率。當(dāng) 有訪問 JSP 頁面的請求發(fā)送到 Web 服務(wù)器時,首先將其中的程序段進行執(zhí)行,然后 將執(zhí)行結(jié)果連同 JSP 文件中的 HTML 代碼一起返回

7、給客戶。插入的 Java 程序段可 以用來進行數(shù)據(jù)庫、重新定向網(wǎng)頁等操作,以實現(xiàn)建立動態(tài)網(wǎng)頁所需要的功能。JSP 與 Java Servlet 一樣,是在服務(wù)器端執(zhí)行的,通常返回給客戶端的就是一個 HTML 文本,因此客戶端只要有瀏覽器就能瀏覽。 21.3.3 Struts2Struts2 框架是在 Struts1 和 WebWork 框架的基礎(chǔ)上開發(fā)出來的, 它吸收了 2 個框架的優(yōu)點。 Struts1 框架和 WebWork 框架是 2 個完全不同的框架。 因此,雖然 Struts2 感覺上好像是 Struts1 的升級版, 但是卻和 Struts1 相比,在設(shè)計理念上有 著本質(zhì)的不同。在

8、體系結(jié)構(gòu)和運行流程上 Struts2 和 WebWork 非常相似,因此, 可以將 Struts2 理解成是繼承了 WebWork 的血統(tǒng)。Struts2 框架大致是由核心控制器、 業(yè)務(wù)控制器和用戶實現(xiàn)的業(yè)務(wù)邏輯組件 3 個 部分組成。其中, FilterDispatcher 充當(dāng)著核心控制器,該控制器作為一個 Filter 運行在 Web 應(yīng)用中,并負責(zé)攔截用戶的所有請求。用戶使用軟件時,如果請求最后 是以“ .action ”結(jié)尾,那么,該請求就將轉(zhuǎn)入到 Struts2 框架中進行處理。用戶自 己實現(xiàn)的 Action 類的實例其實就是業(yè)務(wù)控制器, 在這些 Action 類中,一般都包含一

9、個 execute ()方法,該方法的返回值一般都是一個字符串,就是一般我們所說的邏 輯視圖名,并且,總有一個實際要轉(zhuǎn)到的視圖資源和這些邏輯視圖名相對應(yīng)。雖然Struts2 在核心控制器和業(yè)務(wù)控制器方面為用戶提供了很多幫助,但是在業(yè)務(wù)邏輯組 件方面,它確沒有提供太多的幫助。業(yè)務(wù)邏輯組件其實只是一個表現(xiàn)層的框架,因此 在實際開發(fā)過程中, 當(dāng)控制器需要獲取業(yè)務(wù)邏輯組件時, 通常都要通過 Factory 模式 來獲取所需的業(yè)務(wù)邏輯組件實例。 31.3.4 Microsoft SQL Server2000Microsoft SQL Server 2000 是一款由微軟公司開發(fā)的數(shù)據(jù)庫產(chǎn)品。它擁有很 多

10、的分類,但基本都是產(chǎn)品規(guī)格上的改變,內(nèi)部包含的服務(wù)不同。一般有企業(yè)版,各 人版,移動版以及搜索引擎類等版本。其中,企業(yè)版相對與其它幾個版本來說,功能 比較齊全,但是確不能在 WindowXP 下安裝,這點比較遺憾。 Microsoft SQL Server 2000 的主要作用是對程序所需要的數(shù)據(jù)進行存儲、分析、查詢、修改等操作。Microsoft SQL Server 2000 簡化了之前版本數(shù)據(jù)庫中的管理和優(yōu)化功能,并 且極大的提高了在線商務(wù)應(yīng)用程序成功部署所需的可靠性和伸縮性。 其中,日志傳送、 在線備份和故障切換群集等功能用以提高可靠性的特性。并且,對 32 顆 CPU 和 64 GB

11、 RAM 的支持也在很大程度上改進在伸縮性方面。通過對數(shù)據(jù)文件尺寸的自動管 理、基于向?qū)У臄?shù)據(jù)庫拷貝、自動內(nèi)存管理和簡化的故障切換群集安裝與管理等一系 列的自動優(yōu)化和改進后的管理特性, 使得用戶能夠迅速部署并有效管理在線商務(wù)應(yīng)用 程序。Microsoft SQL Server 還提供了數(shù)據(jù)庫完整性保護。在 SQL Server 中,為了 對實現(xiàn)數(shù)據(jù)庫完整性的約束,則通過檢查( Check )約束、默認值 (Default) 約束、用 戶定義的數(shù)據(jù)類型、規(guī)則 (Rule) 、存儲過程 (Stored procedure) 、觸發(fā)器 (Trigger) 等 技術(shù)來實現(xiàn),從而使數(shù)據(jù)庫中的數(shù)據(jù)達到一致

12、、正確,以提高數(shù)據(jù)庫系統(tǒng)的性能2 系統(tǒng)需求分析需求分析是系統(tǒng)開發(fā)的首要步驟,也是直接影響系統(tǒng)整體性能和功能的關(guān)鍵步 驟。系統(tǒng)的需求分析主要是對系統(tǒng)的可行性、性能和功能進行具體地分析。不合理的 需求分析,會使系統(tǒng)的開發(fā)環(huán)節(jié)出現(xiàn)許多錯誤和走許多彎路,導(dǎo)致系統(tǒng)開發(fā)時間長, 效率低,系統(tǒng)質(zhì)量受到影響。2.1 運行環(huán)境分析硬件需求CPU :1G 以上內(nèi)存: 512M 以上硬盤: 1G 以上系統(tǒng)環(huán)境操作系統(tǒng): Window XP/Window2000數(shù)據(jù)庫: SQL Server 2000開發(fā)工具: MyEclipse開發(fā)語言: Java2.2 功能模塊分析(1 )功能分析系統(tǒng)具有倉庫管理系統(tǒng)的基本功能。

13、系統(tǒng)分為兩個部分,一個是用戶部分:用戶可以使用用戶名和密碼登錄系統(tǒng)進行操作。一個是系統(tǒng)部分: 這部分包括對商品的入庫、 出庫操作, 在庫貨物查詢等功能。(2)模塊分析登錄模塊:倉庫管理人員進入系統(tǒng)必須經(jīng)過登錄。添加商品信息模塊:新入庫的商品,在進入倉庫之前,必須經(jīng)過倉庫管理人員的 進行添加。入庫模塊:倉庫中已有的商品才能進行的操作,主要是入庫數(shù)量上的變化。 商品類別管理模塊:商品類別來區(qū)分各種商品,將商品分類管理。2.3 系統(tǒng)目的分析倉儲物流在企業(yè)的整個供應(yīng)鏈中起到一個至關(guān)重要的作用, 如果不能正確的保證 貨物的入庫,庫存貨物的發(fā)貨,將導(dǎo)致企業(yè)管理費用的增加。并且,倉庫管理人員的 工作時間會延

14、長,工作的效率不高。開發(fā)這個系統(tǒng), 主要的目的就是幫助倉庫管理人員提高工作效率, 降低工作時間, 實現(xiàn)倉庫貨物在管理上的系統(tǒng)化,規(guī)范化和自動化。2.4 性能分析本系統(tǒng)操作簡單,界面美觀,使用本系統(tǒng)的倉庫管理人員不需要掌握太多的專業(yè) 知識便可熟練使用。系統(tǒng)能夠迅速的將倉庫管理人員對商品信息的操作(包括商品的入庫、出庫,商 品信息的修改和刪除,商品類別的添加和刪除等)顯示在對應(yīng)的頁面中,達到“即時 操作,即時顯示”的效果。系統(tǒng)功能完善, 包括了一般倉庫管理系統(tǒng)的所有功能, 完全能夠滿足用戶的需要。3 系統(tǒng)設(shè)計系統(tǒng)的設(shè)計是系統(tǒng)開發(fā)中的一個重要環(huán)節(jié)。本章將主要介紹一個基于 B/S 架構(gòu) 的倉庫管理系統(tǒng)

15、的總體結(jié)構(gòu)、系統(tǒng)架構(gòu)和數(shù)據(jù)庫設(shè)計。總體結(jié)構(gòu)主要介紹了各個模塊 之間的關(guān)系,數(shù)據(jù)庫設(shè)計主要說明了表的建立和數(shù)據(jù)之間的關(guān)系。3.1 總體結(jié)構(gòu)本系統(tǒng)包含了倉庫管理系統(tǒng)所需要的基本功能, 能夠滿足一般用戶對于倉庫管理 的需要,能有效的提高倉庫管理人員的工作效率。根據(jù)系統(tǒng)的需求分析,系統(tǒng)大體分 為以下幾個模塊:登錄模塊、添加商品信息模塊、出庫模塊、入庫模塊、商品類別管 理模塊。其中,各個模塊又有不同的子模塊??傮w結(jié)構(gòu)如圖 3.1 所示圖3.1總體結(jié)構(gòu)圖3.2 系統(tǒng)架構(gòu)系統(tǒng)是基于B/S結(jié)構(gòu)開發(fā)的,B/S結(jié)構(gòu)分為表示層、業(yè)務(wù)層、數(shù)據(jù)層三層。其 中:(1) 表示層:作為用戶的接口層,負責(zé)用戶與整個系統(tǒng)交互,利

16、用JSP技術(shù)來實現(xiàn)。(2) 業(yè)務(wù)層:作為業(yè)務(wù)邏輯的封裝層,采用 Struts2框架,頁面接受到用戶請求 后,將數(shù)據(jù)層取到的數(shù)據(jù)進行處理,最后把處理結(jié)果在表示層中顯示出來。數(shù)據(jù)層:作為數(shù)據(jù)的存儲層,采用 SQL Server 2000數(shù)據(jù)庫進行數(shù)據(jù)的管理。3.3 數(shù)據(jù)庫設(shè)計3.3.1 概念結(jié)構(gòu)設(shè)計概念設(shè)計從系統(tǒng)的需求出發(fā),用數(shù)據(jù)流的形式將設(shè)計對象表達成完整的抽象實體。但不涉及模塊內(nèi)部的細節(jié)。它的描述工具是E-R圖,如圖3.2所示。貨物商品數(shù)量圖3.2系統(tǒng)E-R圖3.3.2 邏輯結(jié)構(gòu)設(shè)計邏輯結(jié)構(gòu)的描述方法是基本表,它反映了系統(tǒng)中所涉及數(shù)據(jù)的邏輯結(jié)構(gòu)。根據(jù)系統(tǒng)中數(shù)據(jù)信息的特點,將數(shù)據(jù)的概念模型轉(zhuǎn)換為

17、關(guān)系模型(1)用戶信息關(guān)系模式,其中用戶名為關(guān)系主鍵。用戶(用戶ID、用戶名、密碼)(2)商品信息關(guān)系模式,其中商品號碼為關(guān)系主鍵。商品(商品號碼、商品名、生產(chǎn)產(chǎn)地、商品數(shù)量、類別ID)(3)商品類別信息關(guān)系模式,其中類別ID為關(guān)系主鍵。商品類別(類別ID、類別名)(4)出庫商品信息關(guān)系模式,其中商品號碼為關(guān)系主鍵。出庫商品(商品號碼、商品名、生產(chǎn)產(chǎn)地、出庫數(shù)量、類別ID)表3.1 商品信息表(kehu )列名數(shù)據(jù)類型可否為空說明comIDVarchar ( 50)NOT NULL商品IDcomn ameVarchar ( 50)NULL商品名稱comfromVarchar ( 50)NULL

18、生產(chǎn)廠家comnu mberChar ( 10)NULL商品數(shù)量sortIDint ( 4)NULL商品類別ID表3.2商品出庫信息表(outkehu )列名數(shù)據(jù)類型可否為空說明comIDVarchar ( 50)NOT NULL商品IDcomn ameVarchar ( 50)NULL商品名稱comfromVarchar ( 50)NULL生產(chǎn)廠家comnu mberChar ( 10)NULL商品數(shù)量sortIDint ( 4)NULL商品類別ID表3.3倉庫管理員信息表(abc )列名數(shù)據(jù)類型可否為空說明userIDchar ( 10)NOT NULL管理員IDuser namechar

19、 ( 10)NULL管理員姓名passwordchar ( 10)NULL密碼表3.4商品類別管理信息表(sort )列名數(shù)據(jù)類型可否為空說明sortIDlnt(4)NOT NULL商品類別IDsortNameChar(10)NULL商品類別名稱3.3.3 物理結(jié)構(gòu)設(shè)計本系統(tǒng)采用Microsoft SQL Server 2000數(shù)據(jù)庫系統(tǒng),系統(tǒng)提供了良好的數(shù)據(jù)庫管理功能來管理商品數(shù)據(jù)。數(shù)據(jù)庫名為fmw,表名分別為kehu、abc、outkehu、sort。數(shù)據(jù)的備份和恢復(fù)采用數(shù)據(jù)庫系統(tǒng)本身提供的數(shù)據(jù)導(dǎo)入/導(dǎo)出工具來完成,形成相應(yīng)的數(shù)據(jù)文件。其 中數(shù)據(jù)文件名為fmw_Data.MDF ;日志文件

20、名為fmw_Log.LDF4 系統(tǒng)實現(xiàn)該系統(tǒng)實現(xiàn)了倉庫管理系統(tǒng)的基本功能,包括商品的入庫、出庫,商品信息的修 改和刪除,商品類別的添加、刪除。用戶 (即倉庫管理人員 )登錄后可以進入系統(tǒng)使用 主界面,在主界面上,倉庫管理人員可以對本系統(tǒng)的各個界面進行操作。4.1 數(shù)據(jù)庫連接和頁面顯示4.1.1 數(shù)據(jù)庫連接本系統(tǒng)與數(shù)據(jù)庫的連接方式,包括對數(shù)據(jù)庫中的信息進行添加、刪除、修改,都 封裝在一個名為 DBOper.java 的文件中,以便倉庫管理人員在計算機上運行本系統(tǒng) 時,對數(shù)據(jù)庫進行必要的操作。具體代碼如下。import java.sql.*;public class DBOper public D

21、BOper()tryClass. forName (com.microsoft.jdbc.sqlserver.SQLServerDriver);catch(ClassNotFoundException e) private Connection getConnection()Connection conn = null;tryconn=DriverManager. getConnection (jdbc:sqlserver:/localhost:1433;DatabaseName=fmw, sa, sa); /填寫相關(guān)的數(shù)據(jù)庫名和數(shù)據(jù)庫用戶名和密碼Stateme nt stmt=c onn.

22、createStateme nt();catch(SQLExceptio n e)System. out .println(e.getMessage();retur n conn;public ResultSet executeQuery(Stri ng sql)ResultSet rs=null;tryConnection conn=this.getC onn ectio n();Stateme nt stmt=c onn. createStateme nt();rs=stmt.executeQuery(sql);catch(SQLExcepti on e)System. out .prin

23、tln(e.getMessage();return rs;/用于執(zhí)行Insert、Update、Delete語句以及SQL DDL語句 public int executeUpdate(Stri ng sql)int num = 0;tryStateme nt stmt=c onn. createStateme nt(); /執(zhí)行一個連接num =stmt.executeUpdate(sql); / 執(zhí)行 sql 的操作 catch(SQLExceptio n e)System. out .println(e.getMessage();return num;/關(guān)閉一個連接private voi

24、d closeConn(Conn ecti on conn)if(n ull != conn)try conn. close(); catch (SQLExceptio n e) e.pri ntStackTrace();/關(guān)閉一個連接private void closeStam(Statement stmt)if(n ull != stmt)try stmt.close(); catch (SQLException e) e.printStackTrace();4.1.2 頁面顯示本系統(tǒng)的頁面顯示很多都是采用的分頁顯示。因為,在一般的情況下,倉庫中的 商品補可能只有一種,因此,要將商品的信息

25、分開顯示出來就需要用到分頁查詢的功 能。具體代碼如下。public List queryByPage ( int pageSize, int pageNow) List list = new ArrayList () ;try if (this .getConnection()!= null & pageSize0 & pageNow0) pstmt = this .getConnection().prepareStatement(select * from kehu order by comID limit+(pageNow*pageSize-pageSize)+, +pageSize);/

26、以商品ID為標(biāo)準(zhǔn)查詢數(shù)據(jù)表kehu中的商品信息rs = pstmt .executeQuery () ;while (rs.next() kehu = new Kehu () ;kehu .setComID ( rs.getInt(1) ;kehu .setComname ( rs.getString(2) ;kehu .setComfrom ( rs .getString(3);kehu .setComnumber ( rs .getString(4);kehu .setSortID ( rs .getString(5);list.add ( kehu ); catch (SQLExcept

27、ion e) e.pri ntStackTrace();return list ;4.2 登錄模塊可進本系統(tǒng)是一個單用戶系統(tǒng)。倉庫管理人員使用用戶名和密碼登入系統(tǒng)之后,入主界面對系統(tǒng)進行操作。登錄界面設(shè)計,如圖4.1所示。用戶登錄;用戶名:E密碼! I圖4.1用戶登錄界面當(dāng)倉庫管理人員登錄系統(tǒng),必須輸入正確的用戶名和密碼,當(dāng)輸入的用戶名或者 密碼錯誤時,就會出現(xiàn)登錄失敗的情況。實現(xiàn)判斷登錄人員用戶名和密碼是否錯誤功能的主要代碼如下public String execute() throws ExceptionDBOper dbOper=new DBOper();String sql=selec

28、t * from abc where username=+username+ and password=+password+; / 查詢數(shù)據(jù)表 abc 中是否有這個用戶名和密碼ResultSet rs=dbOper.executeQuery(sql);System. out .println(sql);if(rs.next()return main;else return error; / 查詢結(jié)果如果有則返回到 main ,沒有,則返回 error ,這兩個返回值對應(yīng)兩個 JSP 頁面4.3 主界面模塊當(dāng)倉庫管理人員用正確的用戶名和密碼登錄進系統(tǒng)之后, 即可直接進入到主界面 在主界面上,有各

29、個子功能界面的超鏈接選項,包括商品信息查詢、商品入庫、新商 品入庫管理、商品類別管理、商品出庫信息查詢。當(dāng)倉庫管理人員完成工作后,即可 選擇退出。主界面如圖 4.2 所示應(yīng)用界面:商品時息杳詢昶入庫新商品入庫管9商品類別管理商品出庫信息竝1週出圖4.2應(yīng)用界面4.4 商品信息查詢模塊本模塊主要功能為商品信息查詢。倉庫管理人員進入該頁面后,可以在本模塊的 界面中查詢到所有商品的信息,并且還有關(guān)于商品出庫和修改商品信息操作的超鏈接 選項。界面如圖4.3所示。商品信息商品號西商品名酈商品數(shù)量驅(qū)類刖ID 岀庫修改I1喜之郎2003理2方便麗MB100t雌傷改3悔飛絲云撕倔3M圖4.3商品信息界面從圖中

30、可以看到,倉庫管理人員可以看到所有商品的信息。這個主要由action包中的ShowGoodsAction.java 類來實現(xiàn)的。ShowGoodsAction.java 類的作用是創(chuàng)建 一個鏈表,將要顯示的商品信息放入這個鏈表中。具體代碼為:ShowGoodsAciton .java: public class ShowGoodsAct ion public String execute。throws ExceptionDBOper db = new DBOper();ResultSet rs = db.executeQuery(select * from kehu ); /查詢 kehu 這

31、個表ArrayList listGoods = new ArrayList(); /創(chuàng)建一個名為 listGoods 的鏈表while (rs. next()Goods goods = new Goods();goods.setComlD(rs.getStri ng(1);goods.setCo mn ame(rs.getStri ng(2);goods.setCo mnu mber(rs.getStri ng(4);goods.setSortlD(rs.getStri ng(5);goods.setComfrom(rs.getStri ng(3);listGoods.add(goods);

32、/將取出的商品信息放到listGoods這個鏈表中Acti onCon text acti onCon text = ActionCon text.getC on text ();Map map = actio nCon text.getApplicatio n();map.put(listGoods, listGoods); /將鏈表里的內(nèi)容放到 map對象里retur n success;441 商品出庫當(dāng)倉庫管理人員需要對在庫商品進行出庫操作時,只需在商品查詢界面的相應(yīng)的商品信息后點擊出庫操作的選項。點擊出庫選項之后,便進入到商品出庫操作界面, 界面如圖4.4所示商品信息尊待出瘁商品億息

33、如下【商品號凋】1【商品名稱1優(yōu)樂美咖啡奶茶【生產(chǎn)廠喙】喜之郎【商品數(shù)量】200【商品類別】3出庫數(shù)量:5口壓W圖4.4商品出庫界面當(dāng)倉庫管理人員點擊確定之后,頁面會根據(jù)倉庫管理人員輸入的數(shù)量,對數(shù)據(jù)庫 中該商品的數(shù)量進行刪減。完成該功能所需的代碼如下。public class DeleteWaresAction private String comID ;private String comnumber1 ;public String execute。throws ExceptionDBOper dbOper= new DBOper();String sql= update kehu set

34、comnu mber=co mnu mber -+comnumber1 + where comID= +comID +; / 以商品 ID 為條件,將該商品 在原有數(shù)量的基礎(chǔ)上,減去輸入的數(shù)量int num=dbOper.executeUpdate(sql);System. out .println(sql);if(n um!=0)return success;else return error;public String getComlD() return comID ;public void setComlD(String comID) this .comID = comID;442商品信

35、息修改當(dāng)倉庫管理人員需要對現(xiàn)在倉庫中的商品信息進行修改時,只需在商品信息查詢界面的相應(yīng)的商品信息后點擊修改操作的選項。修改選項是一個超鏈接,它觸發(fā)了一個action,將倉庫管理人員所選的這一行商品信息顯示出來。如圖4.5所示。原商品信息:商品號碼商品名稱商品數(shù)量商品類別1優(yōu)樂麹畔奶茶喜Z郎200修改圖4.5商品信息修改界面從圖中可以看到,頁面上顯示了將要修改的某一行商品的所有信息,并且可以直 接在方框內(nèi)進行修改。完成這個功能的代碼如下public class Modify2Action privateStringcomID ;privateStringcomname1privateString

36、comfrom1 ;privateStringcomnumber1public String execute() throws ExceptionDBOper dbOper= new DBOper();ID為主鍵,String sql= update kehu set comname= +comname1 +, comfrom= +comfrom1 +, comnumber= +comnumber1 +where comID= +comlD +; /以商品ID為標(biāo)記,替換商品的信息,因為商品 不能替換int num=dbOper.executeUpdate(sql);System. out .

37、println(sql);if(num!=0)return success ;else return error ;public String getComID() return comID ;public void setComlD(String comID) this .comID = comID;4.5 商品入庫模塊當(dāng)有倉庫中已有的貨物進入倉庫時,倉庫管理人員可以使用主界面上的“商品入 庫”操作選項進入商品入庫界面。在這個界面中,倉庫管理人員可以看到現(xiàn)有商品的 所有信息,并且可以在相應(yīng)的商品信息后面點擊入庫操作選項進行商品的入庫操作。 該界面如圖4.6所示。筍品信息fiiSiv碼商品名檸

38、現(xiàn)有數(shù)量商刪as1優(yōu)樂美咖誹妍茶喜之郎2003AS2隸師停方值面Al3海飛建云屬緞畫海飛絲Al圖4.6商品入庫界面圖中的商品信息的顯示的方法和代碼,參照 4.4商品信息查詢界面。4.5.1 商品入庫當(dāng)點擊了上圖中的“入庫”操作選項之后,就進入了商品入庫操作的界面,在這個界面,倉庫管理人員只需輸入新入庫的該商品的數(shù)量即可。該界面如圖4.7所示。商品信息等待入庫商品信息如下【商品號碼】2【商品名稱】康師傅方便面【生產(chǎn)廠家】 康師値【商品數(shù)量】100【商品類別】 1入庫數(shù)量|唾亟圖4.7商品入庫操作界面當(dāng)倉庫管理人員輸入數(shù)量后,點擊確定,即完成了對商品的入庫操作。完成該功 能的代碼可參照完成圖4.3

39、功能所用的代碼。之前很多次提到點擊操作選項顯示某一 個商品的全部信息的操作功能,實現(xiàn)這個功能的代碼如下。public class ModifyAction String comID ;public String execute。throws ExceptionGoods goods= new Goods();DBOper db = new DBOper();String sql= select * from kehu where comID= +comlD +”; / 從數(shù)據(jù)庫 中查詢所選商品ID的商品的信息System. out .println(sql);ResultSet rs = db

40、.executeQuery(sql);ArrayList listGoodsl = new ArrayList(); / 創(chuàng)建一個鏈表while (rs.next()goods.setComlD(rs.getStri ng(1);goods.setCo mn ame(rs.getStri ng(2);goods.setCo mnu mber(rs.getStri ng(4);goods.setSortlD(rs.getStri ng(5);goods.setComfrom(rs.getStri ng(3);listGoodsl.add(goods);Map request = (Map)Act

41、io nCon text.getC on text ().get( request);request.put( listGoodsl , listGoodsl); /將鏈表里的內(nèi)容放到 request 對象里,使網(wǎng)頁能夠取出return success;public String getComID() return comID ;public void setComID(String comID) this .comID = comID;4.6 新商品入庫管理模塊當(dāng)有新的商品進入倉庫中時,倉庫管理人員需點擊主界面的“新商品入庫管理”選項。在進行添加商品信息的操作過程中,商品的類別選擇是根據(jù)一個

42、連接著“sort ”數(shù)據(jù)表的下拉框來選擇的。當(dāng)將新入庫的商品的信息填寫完畢之后,點擊確定將新入 庫的商品的信息添加到管理商品信息的數(shù)據(jù)表“kehu ”中。界面如圖4.8所示。添加商品信息;圖4.8新商品入庫操作界面當(dāng)點擊“確定”之后,就將倉庫管理人員輸入的新入庫商品的信息保存到了數(shù)據(jù) 庫中,功能實現(xiàn)的具體代碼如下。import java.sql.ResultSet;import java.util.Map;import ado.DBOper;import com.open symph on y.xwork2.*;public class AddAct ionprivate Stri ng co

43、mID=n ull;private String comn ame=nu II;private String comfr om=n ull;private Stri ng comnu mber =n ull;private int sortID;/初始化商品的信息實例化一個DBOperpublic String execute。throws ExceptionDBOper dbOper= new DBOper();String sql=insert into kehu (comID,comname,comfrom,comnumber,sortID) values (+comID+ ,+ +co

44、mname+,+ +comfrom+,+ +comnumber+,+ +sortID+); / 填寫的信息保存到 kehu 數(shù)據(jù)表中int num=dbOper.executeUpdate(sql);if(num!=0)return success2;else return error;public String getComID() return comID;public void setComID(String comID) ID = comID;4.7 商品類別管理模塊在本文 4.6 章新商品入庫管理模塊中,我已經(jīng)提到商品的類別選擇是由一個連接 著“ sort ” 數(shù)據(jù)表的下拉框來選擇的。因此,必定有一個管理著商品類別的界面。界面如圖 4.9 所示。商品類別管理増加商品類別刪除商品類捌退岀圖4.9商品類別管理界面如圖可見,商品類別的管理有添加和刪除兩個方面。點擊上圖的“增加商品類別” 選項可進行商品類別的添加操作,操作的實現(xiàn)界面可參照本文4.5章的圖4.6新商品入 庫管理;點擊“刪除商品類別”選項可進行商品類別的刪除操作,在這個界面中,倉

溫馨提示

  • 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論