版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、畢 業(yè) 論 文學(xué)生姓名學(xué) 號(hào)學(xué)院 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院專 業(yè)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院(軟件工程)題 目基于jsp的倉(cāng)庫(kù)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)指導(dǎo)教師 講 師/碩 士(姓 名) (專業(yè)技術(shù)職稱/學(xué)位)年月摘要:倉(cāng)庫(kù)管理系統(tǒng)是一個(gè)企業(yè)不可或缺的部分,高效的倉(cāng)庫(kù)管理系統(tǒng)可以為企業(yè)的發(fā)展和經(jīng)營(yíng)提供堅(jiān)強(qiáng)的后盾。隨著科技的不斷發(fā)展,用計(jì)算機(jī)對(duì)倉(cāng)庫(kù)進(jìn)行管理,具有人工管理所無(wú)法比擬的優(yōu)點(diǎn),例如:檢索迅速、查找方便、保密性好、成本低、壽命長(zhǎng)等。這些優(yōu)點(diǎn)能極大地提高倉(cāng)庫(kù)管理的效率, 使企業(yè)的倉(cāng)庫(kù)管理井井有條,為企業(yè)的健康發(fā)展創(chuàng)造良好的條件。本文在分析現(xiàn)有管理系統(tǒng)開(kāi)發(fā)技術(shù)的基礎(chǔ)上,實(shí)現(xiàn)了以eclipse為開(kāi)發(fā)平臺(tái)的基于j
2、sp的,以mysql作為后臺(tái)數(shù)據(jù)庫(kù)的倉(cāng)庫(kù)管理系統(tǒng)。該系統(tǒng)主要具備基本信息管理、庫(kù)存管理、信息查詢、用戶管理等功能模塊。關(guān)鍵詞:倉(cāng)庫(kù)管理,jsp,mysql數(shù)據(jù)庫(kù)abstract: warehouse management system is an indispensable part of the enterprise. a warehouse management system with high efficiency can provide a strong backing for the development and management of enterprises. with th
3、e development of technology,to manage the warehouse with computer has the incomparable advantages of manual management.for example, quick search, find convenient, good security, low cost, long service life etc. these advantages can greatly improve the efficiency of warehouse management, the enterpri
4、se storage management be arranged in good order, and create good conditions for the healthy development of enterprises. in this paper, based on analysis of the existing management system development technology, in order to realize the eclipse as the development platform based on jsp, using mysql as
5、the background database warehouse management system. the system mainly has the basic information management, inventory management, information query, user management modulekeywords: warehouse management, jsp, mysql database目 錄1 緒論41.1 開(kāi)發(fā)背景41.2 開(kāi)發(fā)意義41.3 本文組織結(jié)構(gòu)42 系統(tǒng)解決方案52.1 jsp語(yǔ)言概述52.2 ssh框架52.3 mysql
6、數(shù)據(jù)庫(kù)52.4 系統(tǒng)平臺(tái)環(huán)境53 需求分析63.1 面向的用戶人群63.2 功能需求分析63.3 業(yè)務(wù)流程圖74 數(shù)據(jù)庫(kù)設(shè)計(jì)94.1 e-r模型94.2 數(shù)據(jù)模型125 詳細(xì)設(shè)計(jì)155.1 數(shù)據(jù)庫(kù)連接類155.2 系統(tǒng)主要模塊16結(jié) 論34參 考 文 獻(xiàn)35致 謝361 緒論1.1 開(kāi)發(fā)背景一直以來(lái)企業(yè)使用傳統(tǒng)人工的方式來(lái)管理文件庫(kù)存,這種管理方式存在許多缺點(diǎn),如: 保密性差、效率低等,而且時(shí)間一長(zhǎng),將產(chǎn)生大量的數(shù)據(jù)和文件, 這對(duì)于企業(yè)查找、更新和維護(hù)都帶來(lái)了很多的困難。由于缺乏科學(xué)的管理和管理工具,企業(yè)在業(yè)務(wù)上和管理上的安排都存在著許多不便。因而針對(duì)這些問(wèn)題而開(kāi)發(fā)的系統(tǒng)具有很好的前景。1.2
7、 開(kāi)發(fā)意義隨著時(shí)代的不斷發(fā)展,社會(huì)正在不斷向信息化時(shí)代邁進(jìn)。由于能夠有效地收集和處理各種信息,提高辦事效率,電子自動(dòng)化辦公越來(lái)越被重視。而隨著互聯(lián)網(wǎng)技術(shù)的不斷發(fā)展,又為電子自動(dòng)化辦公的發(fā)展提供了良好的前景。如今,很多企業(yè)已經(jīng)擁有了計(jì)算機(jī)設(shè)備,具備物質(zhì)條件,但很多工作仍由管理者手工操作完成,這就造成不必要的浪費(fèi)。計(jì)算機(jī)流行的原因主要有以下幾個(gè)方面:1.計(jì)算機(jī)可以代替手工操作進(jìn)行許多繁雜的工作;2.計(jì)算機(jī)可以節(jié)省大量資源;3.計(jì)算機(jī)可以極大地提高人們的工作效率;4.計(jì)算機(jī)可以使敏感文檔更加安全;5.電子自動(dòng)化辦公是先進(jìn)生產(chǎn)力發(fā)展的重要標(biāo)志。綜上所述,用計(jì)算機(jī)開(kāi)發(fā)的軟件系統(tǒng),替代人工操作進(jìn)行管理,可
8、以節(jié)約大量的人力、物力,是企業(yè)發(fā)展的必然趨勢(shì)1!1.3 本文組織結(jié)構(gòu)本系統(tǒng)將以課本和一些課外書(shū)籍為參考,從系統(tǒng)開(kāi)發(fā)背景需求分析概要設(shè)計(jì)詳細(xì)設(shè)計(jì)具體開(kāi)發(fā)一步步對(duì)系統(tǒng)進(jìn)行分析和設(shè)計(jì)。各個(gè)章節(jié)安排如下:第一章為緒論,簡(jiǎn)述項(xiàng)目的開(kāi)發(fā)背景和開(kāi)發(fā)意義;第二章詳細(xì)介紹了項(xiàng)目開(kāi)發(fā)的應(yīng)用技術(shù),比如jsp,框架和數(shù)據(jù)庫(kù)等;第三章是需求分析,介紹了系統(tǒng)的設(shè)計(jì)目標(biāo)和系統(tǒng)的主要功能模塊。第四章是數(shù)據(jù)庫(kù)設(shè)計(jì),在e-r模型的基礎(chǔ)上,再設(shè)計(jì)出相應(yīng)的邏輯模型。第五章根據(jù)系統(tǒng)功能模塊詳細(xì)介紹了各模塊的設(shè)計(jì)過(guò)程并給出部分實(shí)現(xiàn)代碼。2 系統(tǒng)解決方案2.1 jsp語(yǔ)言概述jsp(java server pages)是由sun micr
9、osystems公司倡導(dǎo)、許多公司參與一起建立的一種動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)標(biāo)準(zhǔn)。它的主要目的是將表示邏輯從servlet中分離出來(lái)。它是在傳統(tǒng)的網(wǎng)頁(yè)html文件(*.htm,*.html)中插入java程序段(scriptlet)和jsp標(biāo)記(tag),從而形成jsp文件(*.jsp)。所有程序操作都在服務(wù)器端執(zhí)行,網(wǎng)絡(luò)上傳送給客戶端的僅是得到的結(jié)果,這樣大大降低了對(duì)客戶瀏覽器的要求,即使客戶瀏覽器端不支持java,也可以訪問(wèn)jsp網(wǎng)頁(yè)。用jsp開(kāi)發(fā)的web應(yīng)用是跨平臺(tái)的,既能在linux下運(yùn)行,也能在其他操作系統(tǒng)上運(yùn)行2。2.2 ssh框架ssh 在j2ee項(xiàng)目中表示了3種框架,即 spring +
10、struts +hibernate。本系統(tǒng)采用mvc開(kāi)發(fā)模式來(lái)編寫(xiě)代碼,mvc全名是model view controller,是模型(model)視圖(view)控制器(controller)的縮寫(xiě)3。struts對(duì)model,view和controller都提供了對(duì)應(yīng)的組件。spring是一個(gè)輕量級(jí)的控制反轉(zhuǎn)(ioc)和面向切面(aop)的容器框架,它由rod johnson創(chuàng)建。它是為了解決企業(yè)應(yīng)用開(kāi)發(fā)的復(fù)雜性而創(chuàng)建的4。spring使用基本的javabean來(lái)完成以前只可能由ejb完成的事情。 hibernate是一個(gè)開(kāi)放源代碼的對(duì)象關(guān)系映射框架,它對(duì)jdbc進(jìn)行了非常輕量級(jí)的對(duì)象封裝
11、,可以應(yīng)用在任何使用jdbc的場(chǎng)合,可以在servlet/jsp的web應(yīng)用中使用,也可以在應(yīng)用ejb的j2ee架構(gòu)中取代cmp,完成數(shù)據(jù)持久化的重任5。2.3 mysql數(shù)據(jù)庫(kù)mysql是一個(gè)關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),由瑞典mysql ab公司開(kāi)發(fā),目前屬于oracle公司。mysql是一種關(guān)聯(lián)數(shù)據(jù)庫(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ǔ)言。由于其體積小、速度快、總體擁有成本低,尤其是開(kāi)放源碼這一特點(diǎn),一般中小型網(wǎng)站的開(kāi)發(fā)都選擇mysql作為網(wǎng)站數(shù)據(jù)庫(kù)6。2.4 系統(tǒng)平臺(tái)
12、環(huán)境(1)硬件環(huán)境:服務(wù)器:cpu: 2g或以上;內(nèi)存:1g ram或以上;硬盤(pán):80g或以上;客戶端:cpu: 1g或以上;內(nèi)存:64mb以上內(nèi)存或更高;硬盤(pán):20g或以上。(2)軟件開(kāi)發(fā)環(huán)境:操作系統(tǒng):windowsxp;所用工具:eclipse,navicat for mysql;數(shù)據(jù)庫(kù):mysql。3 需求分析3.1 面向的用戶人群1. 管理員:作為系統(tǒng)的管理員和維護(hù)者,對(duì)系統(tǒng)基本信息、倉(cāng)庫(kù)管理等模塊進(jìn)行數(shù)據(jù)的管理,并對(duì)系統(tǒng)的更新作出及時(shí)的響應(yīng),使得系統(tǒng)能更好地運(yùn)行。2. 普通用戶:作為系統(tǒng)的使用者,注冊(cè)登陸系統(tǒng)后,可以查詢系統(tǒng)基本信息、倉(cāng)庫(kù)信息、修改個(gè)人信息等。3.2 功能需求分析倉(cāng)
13、庫(kù)管理系統(tǒng)基本信息管理庫(kù)存管理信息查詢用戶管理用戶添加,刪除用戶密碼修改添加入庫(kù)記錄添加出庫(kù)記錄按倉(cāng)庫(kù)查詢按貨物查詢用戶添加刪除用戶權(quán)限修改系統(tǒng)設(shè)置個(gè)人信息修改圖3-1 系統(tǒng)功能模塊圖本系統(tǒng)是一款倉(cāng)庫(kù)管理系統(tǒng),旨在對(duì)倉(cāng)庫(kù)的自動(dòng)化管理以適應(yīng)信息化社會(huì)的生產(chǎn)方式。根據(jù)倉(cāng)庫(kù)管理系統(tǒng)的需求,劃分了倉(cāng)庫(kù)的功能模塊,主要分為用戶管理模塊、入庫(kù)出庫(kù)模塊、倉(cāng)庫(kù)查詢模塊、盤(pán)點(diǎn)統(tǒng)計(jì)模塊7。具體功能如圖3-1所示。3.3 業(yè)務(wù)流程圖該系統(tǒng)的用戶分為普通用戶和管理員。管理員擁有所有權(quán)限,而普通用戶只能進(jìn)行查詢的操作。13.3.1 管理員模塊圖3-2 管理員使用流程圖管理員使用流程如圖3-2所示。
14、1. 登錄登陸界面包括賬號(hào)和密碼兩個(gè)文本框和身份選擇單選框,用戶登陸成功就會(huì)轉(zhuǎn)到系統(tǒng)主頁(yè)面,否則將會(huì)提示賬號(hào)密碼錯(cuò)誤。2. 查詢信息用戶登陸查詢信息界面可以對(duì)倉(cāng)庫(kù)信息(倉(cāng)庫(kù)、貨物、供應(yīng)商、部門(mén)、入庫(kù)單、出庫(kù)單)進(jìn)行查詢。3. 設(shè)置信息(管理員)管理員用戶登陸設(shè)置信息界面可以對(duì)倉(cāng)庫(kù)信息(倉(cāng)庫(kù)、貨物、供應(yīng)商、部門(mén)、入庫(kù)單、出庫(kù)單)進(jìn)行設(shè)置。4. 添加記錄(管理員)管理員用戶登陸添加界面可以添加入庫(kù)和出庫(kù)信息。5. 修改密碼用戶可以修改自己的密碼,需要先驗(yàn)證舊密碼,驗(yàn)證成功后通過(guò)輸入兩次新密碼對(duì)密碼進(jìn)行修改。6. 用戶管理(管理員)管理員用戶可以對(duì)已添加的用戶權(quán)限進(jìn)行修改,也可以刪除已存在的用戶。3
15、.3.2 普通用戶模塊圖3-3 普通用戶使用流程圖普通用戶使用流程如圖3-3所示。普通用戶只能進(jìn)行查詢操作和修改個(gè)人信息。4 數(shù)據(jù)庫(kù)設(shè)計(jì)數(shù)據(jù)庫(kù)是一種存儲(chǔ)數(shù)據(jù)并對(duì)數(shù)據(jù)進(jìn)行操作的工具。數(shù)據(jù)庫(kù)的作用在于組織和表達(dá)信息,即數(shù)據(jù)庫(kù)就是相關(guān)信息的集合。本章從e-r模型的分析設(shè)計(jì)為切入點(diǎn),重點(diǎn)介紹了數(shù)據(jù)庫(kù)的設(shè)計(jì)。根據(jù)倉(cāng)庫(kù)管理系統(tǒng)的功能,將其e-r圖轉(zhuǎn)化為數(shù)據(jù)庫(kù)表,為系統(tǒng)的實(shí)現(xiàn)奠定了基礎(chǔ)。4.1 e-r模型e-r模型即實(shí)體-聯(lián)系模型,它是由實(shí)體集、屬性和聯(lián)系集構(gòu)成。實(shí)體集用矩形框表示,矩形框內(nèi)寫(xiě)上實(shí)體名。實(shí)體的屬性用橢圓框表示,框內(nèi)寫(xiě)上屬性名,并用無(wú)向邊與其對(duì)應(yīng)的實(shí)體集相連。實(shí)體間的聯(lián)系用菱形框表示,菱形框中
16、寫(xiě)上以適當(dāng)?shù)暮x命名的名字,用無(wú)向連線將參加聯(lián)系的實(shí)體矩形框分別與菱形框相連,并在連線上標(biāo)明聯(lián)系的類型,即11、1n或mn。本系統(tǒng)的e-r模型主要包括部門(mén)實(shí)體、貨物實(shí)體、用戶實(shí)體、供應(yīng)商實(shí)體、倉(cāng)庫(kù)實(shí)體、入庫(kù)單實(shí)體和出庫(kù)單實(shí)體共七個(gè)實(shí)體集和一個(gè)各實(shí)體聯(lián)系集。e-r模型如下文所述。4566.11. 部門(mén)實(shí)體用來(lái)存儲(chǔ)部門(mén)信息,e-r圖如圖4-1所示:部門(mén)部門(mén)電話部門(mén)地址部門(mén)經(jīng)理部門(mén)編號(hào)部門(mén)名稱圖4-1 部門(mén)實(shí)體e-r圖2. 貨物實(shí)體用來(lái)存儲(chǔ)貨物信息,e-r圖如圖4-2所示:貨物貨物編號(hào)供貨商編號(hào)計(jì)量單位貨物價(jià)格貨物規(guī)格貨物名稱圖4-2 貨物實(shí)體e-r圖3. 用戶實(shí)體用來(lái)存儲(chǔ)用戶信息,e-r圖如圖4-
17、3所示:用戶用戶編號(hào)用戶密碼用戶權(quán)限用戶名圖4-3用戶實(shí)體e-r圖4. 供應(yīng)商實(shí)體用來(lái)存儲(chǔ)供應(yīng)商信息,e-r圖如圖4-4所示:供應(yīng)商供應(yīng)商電話供應(yīng)商地址供應(yīng)商聯(lián)系人供應(yīng)商編號(hào)供應(yīng)商名稱圖4-4供應(yīng)商實(shí)體e-r圖5. 倉(cāng)庫(kù)實(shí)體用來(lái)存儲(chǔ)倉(cāng)庫(kù)信息,e-r圖如圖4-5所示:倉(cāng)庫(kù)倉(cāng)庫(kù)電話庫(kù)存總量倉(cāng)庫(kù)管理員倉(cāng)庫(kù)編號(hào)已用庫(kù)存量圖4-5倉(cāng)庫(kù)實(shí)體e-r圖6. 入庫(kù)單實(shí)體用來(lái)存儲(chǔ)入庫(kù)單信息,e-r圖如圖4-6所示:入庫(kù)單入庫(kù)編號(hào)管理員編號(hào)倉(cāng)庫(kù)編號(hào)修改時(shí)間入庫(kù)時(shí)間入庫(kù)類型貨物編號(hào)入庫(kù)數(shù)量圖4-6入庫(kù)單實(shí)體e-r圖7. 出庫(kù)單實(shí)體用來(lái)存儲(chǔ)出庫(kù)單信息,e-r圖如圖4-7所示:出庫(kù)單出庫(kù)編號(hào)管理員編號(hào)倉(cāng)庫(kù)編號(hào)修改時(shí)間出庫(kù)
18、時(shí)間部門(mén)編號(hào)貨物編號(hào)出庫(kù)數(shù)量圖4-7出庫(kù)單實(shí)體e-r圖8各實(shí)體聯(lián)系e-r圖如圖4-8所示。用戶通過(guò)添加入庫(kù)單和出庫(kù)單記錄入庫(kù)信息和出庫(kù)信息,供應(yīng)商提供貨物,部門(mén)使用貨物,一條記錄對(duì)應(yīng)一個(gè)供應(yīng)商或者部門(mén),貨物入庫(kù)貨物出庫(kù)倉(cāng)庫(kù)入庫(kù)單出庫(kù)單供應(yīng)商部門(mén)貨物存放用戶添加nn11添加11nnmnmm圖4-8 各實(shí)體聯(lián)系e-r圖4.2 數(shù)據(jù)模型根據(jù)4.1中分析得出的e-r圖,本系統(tǒng)采用mysql數(shù)據(jù)庫(kù)管理系統(tǒng),在mysql數(shù)據(jù)庫(kù)管理系統(tǒng)中新建名稱為mystorage的數(shù)據(jù)庫(kù),本系統(tǒng)所使用的所有數(shù)據(jù)信息均將存儲(chǔ)于該數(shù)據(jù)庫(kù)中。以下列舉數(shù)據(jù)表。11.11.21. 部門(mén)表(department)表4-1 部門(mén)表列名
19、數(shù)據(jù)類型大小說(shuō)明depaidint4部門(mén)編號(hào)depanamevarchar24部門(mén)名稱depapersonvarchar15部門(mén)經(jīng)理depaphonechar11部門(mén)電話depaaddrvarchar90部門(mén)地址2. 貨物表(goods)表4-2 貨物表列名數(shù)據(jù)類型大小說(shuō)明goodsidint4貨物編號(hào)suppidint4供應(yīng)商編號(hào)goodsnamevarchar30貨物名稱goodssizevarchar10貨物規(guī)格goodspriceint4貨物價(jià)格unitchar6計(jì)量單位3. 入庫(kù)表(instore)表4-3 入庫(kù)表列名數(shù)據(jù)類型大小說(shuō)明instidint4入庫(kù)編號(hào)instclassch
20、ar1入庫(kù)類型goodsidint4貨物編號(hào)instnumint4入庫(kù)數(shù)量insttimedatetime8入庫(kù)時(shí)間modifytimedatetime8修改時(shí)間stoidint4倉(cāng)庫(kù)編號(hào)useridint4管理員編號(hào)4. 出庫(kù)表(outstore)表4-4 出庫(kù)表列名數(shù)據(jù)類型大小說(shuō)明outstidint4出庫(kù)編號(hào)depaidint4部門(mén)編號(hào)goodsidint4貨物編號(hào)outstnumint4出庫(kù)數(shù)量outsttimedatetime8出庫(kù)時(shí)間modifytimedatetime8修改時(shí)間stoidint4倉(cāng)庫(kù)編號(hào)useridint4管理員編號(hào)5. 倉(cāng)庫(kù)表(store)表4-5 倉(cāng)庫(kù)表列名數(shù)
21、據(jù)類型大小說(shuō)明stoidint4倉(cāng)庫(kù)編號(hào)stopersonvarchar15倉(cāng)庫(kù)管理員stophonechar11倉(cāng)庫(kù)電話usedvoluint4已用庫(kù)存量allvoluint4庫(kù)存總量6. 供應(yīng)商表(supplier)表4-6 供應(yīng)商表列名數(shù)據(jù)類型大小說(shuō)明suppidint4供應(yīng)商編號(hào)suppnamevarchar45供應(yīng)商名稱supppersonvarchar15供應(yīng)商聯(lián)系人suppphonechar11供應(yīng)商電話suppaddrvarchar90供應(yīng)商地址7. 用戶表(user)表4-7 用戶表列名數(shù)據(jù)類型大小說(shuō)明useridint4用戶編號(hào)usernamevarchar15用戶名pas
22、svarchar16用戶密碼userlevelchar1用戶權(quán)限8. 庫(kù)存表(stock)表4-8 庫(kù)存表列名數(shù)據(jù)類型大小說(shuō)明stoidint4倉(cāng)庫(kù)編號(hào)goodsidint4貨物編號(hào)stockint4庫(kù)存量以上就是mystorage數(shù)據(jù)庫(kù)的數(shù)據(jù)表。5 詳細(xì)設(shè)計(jì)5.1 數(shù)據(jù)庫(kù)連接類在對(duì)數(shù)據(jù)庫(kù)連接的過(guò)程中,為了使代碼更精簡(jiǎn),將對(duì)數(shù)據(jù)庫(kù)的連接方法封裝在drivermana公共類中,其中包括數(shù)據(jù)庫(kù)連接方法getconn、resultset的關(guān)閉方法closers、preparedstatement的關(guān)閉方法closepstmt、connection的關(guān)閉方法closecon。以下即為代碼:public
23、 class drivermana public static connection getconn()connection con=null;try class.forname(com.mysql.jdbc.driver);con=drivermanager.getconnection(jdbc:mysql:/localhost:3306/mystorage, root, root); catch (classnotfoundexception e) e.printstacktrace(); catch (sqlexception e) e.printstacktrace();return
24、con;public static void closers(resultset rs)if(rs!=null)try rs.close(); catch (sqlexception e) e.printstacktrace();public static void closepstmt(preparedstatement pstmt)if(pstmt!=null)try pstmt.close(); catch (sqlexception e) e.printstacktrace();public static void closecon(connection con)if(con!=nul
25、l)try con.close(); catch (sqlexception e) e.printstacktrace();5.2 系統(tǒng)主要模塊5.2.1 登錄模塊圖5-1 登錄界面本模塊主要用于對(duì)用戶身份進(jìn)行鑒別。用戶有兩種身份:普通用戶和管理員。用戶通過(guò)單選框選擇登錄身份,通過(guò)表單輸入用戶名、密碼,系統(tǒng)根據(jù)用戶提供的信息對(duì)用戶進(jìn)行身份鑒別。界面如圖5-1所示。后臺(tái)代碼實(shí)現(xiàn):public void dopost(httpservletrequest request, httpservletresponse response)throws servletexception, ioexcepti
26、on string username=request.getparameter(username);string password=request.getparameter(paswrd);string userlevel=request.getparameter(userlevel);user luser=new user();luser.setusername(username);luser.setpassword(password);luser.setuserlevel(userlevel);ilogindao logindao=new logindaoimpl();user login
27、=logindao.getuser(luser);if(login!=null)httpsession session=request.getsession();session.setattribute(login, login);servletcontext context=this.getservletcontext();requestdispatcher dispatcher;if(login.getuserlevel().equals(0)dispatcher=context.getrequestdispatcher(/comuser.jsp);elsedispatcher=conte
28、xt.getrequestdispatcher(/manauser.jsp);dispatcher.forward(request, response);elserequest.setattribute(loginfail,登錄失敗);servletcontext context=this.getservletcontext();requestdispatcher dispatcher=context.getrequestdispatcher(/login.jsp);dispatcher.forward(request, response);5.2.2 目錄生成模塊由登陸界面進(jìn)入主界面后,總體
29、界面如圖5-2所示:圖5-2 主界面畫(huà)面左邊即為目錄。目錄模塊主要用于生成目錄部分,菜單的折疊展開(kāi)是使用javascript代碼實(shí)現(xiàn)的。菜單展開(kāi)折疊功能實(shí)現(xiàn)代碼:var divheight=130;var speed=11;var i=0;var s;var p=0;function doopenclose(n)if(document.getelementbyid(bbb+n).offsetheightdivheight)p=divheight;inc2(n);function inc(x)i=i+10;document.getelementbyid(bbb+x).style.height=i
30、+px;if(idivheight)i=divheight-5;var s=settimeout(inc(+x+),speed);if(i=125)window.cleartimeout(s);function inc2(x)if(p1)p=p-10;document.getelementbyid(bbb+x).style.height=p+px;var s=settimeout(inc2(+x+),speed);if(p=0)window.cleartimeout(s);5.2.3 基本信息管理模塊基本信息管理模塊包括供應(yīng)商管理、貨物管理、倉(cāng)庫(kù)信息管理和部門(mén)管理。1. 供應(yīng)商管理本功能用于對(duì)
31、供應(yīng)商信息的記錄管理。管理員可以添加新的供應(yīng)商,修改已有的供應(yīng)商信息,刪除供應(yīng)商信息等。界面如圖5-4所示:圖5-4 供應(yīng)商管理界面主要代碼:1) 添加供應(yīng)商public void dopost(httpservletrequest request, httpservletresponse response)throws servletexception, ioexception request.setcharacterencoding(utf-8);response.setcontenttype(text/html;charset=utf-8);string suppname=request
32、.getparameter(suppname);string suppperson=request.getparameter(suppperson);string suppphone=request.getparameter(suppphone);string suppaddr=request.getparameter(suppaddr);supplier supplier=new supplier();supplier.setsuppname(suppname);supplier.setsuppperson(suppperson);supplier.setsuppphone(suppphon
33、e);supplier.setsuppaddr(suppaddr);isupplierdao supplierdao=new supplierdaoimpl();int i=supplierdao.addsupplier(supplier);if(i0)request.setattribute(addpromt, 添加成功!);elserequest.setattribute(addpromt, 添加失敗!);this.getservletcontext().getrequestdispatcher(/addsupplier.jsp).forward(request, response);2)
34、 刪除供應(yīng)商public void dopost(httpservletrequest request, httpservletresponse response)throws servletexception, ioexception string dele=request.getparametervalues(dele);int suppid=0;int rs=0;for(int i=0;i0)request.setattribute(delepromt, 刪除成功!);elserequest.setattribute(delepromt, 刪除失??!);this.getservletco
35、ntext().getrequestdispatcher(/tosupply).forward(request, response);2. 貨物管理本功能用于對(duì)貨物信息的記錄管理。管理員可以添加新的貨物,修改已有的貨物信息,刪除貨物信息等。界面如圖5-5所示:圖5-5 貨物管理界面實(shí)現(xiàn)代碼與供應(yīng)商管理相似。3. 倉(cāng)庫(kù)信息管理本功能用于對(duì)倉(cāng)庫(kù)信息的記錄管理。管理員可以添加新的倉(cāng)庫(kù),修改已有的倉(cāng)庫(kù)信息,刪除倉(cāng)庫(kù)信息等。界面如圖5-6所示:圖5-6 倉(cāng)庫(kù)管理界面實(shí)現(xiàn)代碼與供應(yīng)商管理相似。4. 部門(mén)管理圖5-7 部門(mén)管理界面本功能用于對(duì)部門(mén)信息的記錄管理。管理員可以添加新的部門(mén),修改已有的部門(mén)信息,刪
36、除部門(mén)信息等。界面如圖5-7所示。實(shí)現(xiàn)代碼與供應(yīng)商管理相似。5.2.4 庫(kù)存管理模塊庫(kù)存管理模塊包括入庫(kù)管理、出庫(kù)管理和庫(kù)存管理。1. 入庫(kù)管理本功能用于對(duì)貨物入庫(kù)的記錄管理。當(dāng)某種已有貨物進(jìn)貨后,就可以在此處進(jìn)行添加新紀(jì)錄,查詢或刪除已有記錄等操作。界面如圖5-8所示:圖5-8 入庫(kù)管理界面主要代碼:1) 添加入庫(kù)單public void dopost(httpservletrequest request, httpservletresponse response)throws servletexception, ioexception response.setcontenttype(tex
37、t/html);string instclass=request.getparameter(instclass);int goodsid=integer.parseint(request.getparameter(goodsid);double instnum=double.parsedouble(request.getparameter(instnum);int stoid=integer.parseint(request.getparameter(stoid);date date=new date();httpsession session=request.getsession();use
38、r login=(user)session.getattribute(login);int userid=login.getuserid();instore instore=new instore();instore.setgoodsid(goodsid);instore.setinstclass(instclass);instore.setinstnum(instnum);instore.setstoid(stoid);instore.setinsttime(date);instore.setmodifytime(date);instore.setuserid(userid);iinstor
39、edao instoredao=new instoredaoimpl();int i=0;if(request.getparameter(instid).equals()i=instoredao.addinstore(instore);if(i0)istockdao stockdao=new stockdaoimpl();stock stock=new stock();stock.setstoid(stoid);stock.setgoodsid(goodsid);stock.setstock(instnum);int j=0;if(stockdao.querystock(stock)j=sto
40、ckdao.updatestock(stock,1);elsej=stockdao.addstock(stock);int volume=integer.parseint(request.getparameter(volume);istoragedao storagedao=new storagedaoimpl();i=storagedao.updatestorage(volume, stoid,1);if(i0&j0)request.setattribute(addpromt, 添加成功!);elserequest.setattribute(addpromt, 添加失敗!);elserequ
41、est.setattribute(addpromt, 添加失??!);elseint instid=integer.parseint(request.getparameter(instid);instore.setinstid(instid);instore.setmodifytime(new date();i=instoredao.updateinstore(instore);if(i0)request.setattribute(modifypromt, 修改成功!);elserequest.setattribute(modifypromt, 修改失敗!);this.getservletcon
42、text().getrequestdispatcher(/toaddinstore).forward(request, response);2) 刪除入庫(kù)單public void dopost(httpservletrequest request, httpservletresponse response)throws servletexception, ioexception string dele=request.getparametervalues(dele);int instid=0;int rs=0;for(int i=0;i0)request.setattribute(delepr
43、omt, 刪除成功!);elserequest.setattribute(delepromt, 刪除失?。?;this.getservletcontext().getrequestdispatcher(/toinstore).forward(request, response);3) 修改入庫(kù)單public void dopost(httpservletrequest request, httpservletresponse response)throws servletexception, ioexception string dele=request.getparametervalues(
44、dele);int instid=0;int rs=0;for(int i=0;i0)request.setattribute(delepromt, 刪除成功!);elserequest.setattribute(delepromt, 刪除失敗!);this.getservletcontext().getrequestdispatcher(/toinstore).forward(request, response);2. 出庫(kù)管理本功能用于對(duì)貨物出庫(kù)的記錄管理。當(dāng)某部門(mén)需要某種貨物時(shí),就可以在此處進(jìn)行添加新紀(jì)錄,查詢或刪除已有記錄等操作。界面如圖5-9所示:圖5-9 出庫(kù)管理界面功能實(shí)現(xiàn)代碼與
45、入庫(kù)管理模塊相似。5.2.5 信息查詢模塊本模塊用于對(duì)數(shù)據(jù)進(jìn)行集中查詢處理。管理員可以根據(jù)需要查詢供應(yīng)商、貨物、倉(cāng)庫(kù)、部門(mén)、入庫(kù)單、出庫(kù)單信息,并可以對(duì)其進(jìn)行修改、刪除操作。1. 供應(yīng)商信息查詢本功能主要實(shí)現(xiàn)對(duì)供應(yīng)商信息的查詢,用戶可以根據(jù)供應(yīng)商編號(hào)或供應(yīng)商名稱等對(duì)供應(yīng)商信息進(jìn)行查詢,界面如圖5-10所示:圖5-10 供應(yīng)商信息查詢界面主要代碼:public void dopost(httpservletrequest request, httpservletresponse response)throws servletexception, ioexception request.setch
46、aracterencoding(utf-8);response.setcontenttype(text/html;charset=utf-8);string querycon=request.getparameter(querycon);if(querycon=null)querycon=(string)request.getattribute(querycon);string standa=request.getparameter(standa);if(standa=null)standa=(string)request.getattribute(standa);request.setatt
47、ribute(querycon, querycon);request.setattribute(standa, standa);list supplist=new arraylist();isupplierdao supplierdao=new supplierdaoimpl();if(standa.equals(id)int suppid=integer.parseint(querycon);supplist=supplierdao.getsupplier(suppid);else if(standa.equals(name)supplist=supplierdao.getsupplier(
48、querycon);request.setattribute(supplist, supplist);this.getservletcontext().getrequestdispatcher(/querysupplier.jsp).forward(request, response);2. 貨物信息查詢本功能主要實(shí)現(xiàn)對(duì)貨物信息的查詢,用戶可以根據(jù)貨物編號(hào)或貨物名稱等對(duì)貨物信息進(jìn)行查詢,界面如圖5-11所示:圖5-11 貨物信息查詢界面實(shí)現(xiàn)代碼與供應(yīng)商信息查詢相似。3. 倉(cāng)庫(kù)信息查詢本功能主要實(shí)現(xiàn)對(duì)倉(cāng)庫(kù)信息的查詢,用戶可以根據(jù)倉(cāng)庫(kù)編號(hào)或倉(cāng)庫(kù)負(fù)責(zé)人等對(duì)倉(cāng)庫(kù)信息進(jìn)行查詢,界面如圖5-12所示:圖5-12 倉(cāng)庫(kù)信息查詢界面實(shí)現(xiàn)代碼與供應(yīng)商信息查詢相似。4. 部門(mén)信息查詢本功能主要實(shí)現(xiàn)對(duì)部門(mén)信息的查詢,用戶可以根據(jù)部門(mén)編號(hào)或部門(mén)名稱等對(duì)部門(mén)信息進(jìn)行查詢,界面如圖5-13所示:圖5-13 部門(mén)信息查詢界面實(shí)現(xiàn)代碼與供應(yīng)商信息查詢相似。5. 入庫(kù)單信息查詢本功能主要實(shí)現(xiàn)對(duì)入庫(kù)單信息的查詢,用戶可以根據(jù)入庫(kù)單編號(hào)或入庫(kù)貨物等對(duì)入庫(kù)單信息進(jìn)行查詢,界面如圖5-14所示:圖5-14 入庫(kù)單信息查詢界面實(shí)現(xiàn)代碼與供應(yīng)商信息查詢相似。6. 出庫(kù)單信息查詢本功能主要實(shí)現(xiàn)對(duì)出庫(kù)單信息的查詢,用戶可以根據(jù)出庫(kù)單編號(hào)或出庫(kù)貨物等對(duì)貨物信息進(jìn)
溫馨提示
- 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ù)網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年度戶外展示柜安裝與廣告投放合同3篇
- 幼兒桌游游戲化課程設(shè)計(jì)
- 英語(yǔ)句子結(jié)構(gòu)的課程設(shè)計(jì)
- 熱工課程設(shè)計(jì)自我評(píng)價(jià)
- (標(biāo)準(zhǔn)員)基礎(chǔ)知識(shí)練習(xí)(共六卷)
- 幼兒園回憶過(guò)年課程設(shè)計(jì)
- 紅色精神體育課程設(shè)計(jì)
- 物流行業(yè)配送技巧分享
- 生物實(shí)驗(yàn)教學(xué)案例分享計(jì)劃
- 網(wǎng)絡(luò)實(shí)驗(yàn)課課程設(shè)計(jì)書(shū)
- 2021年中國(guó)保險(xiǎn)保障基金有限責(zé)任公司校園招聘筆試試題及答案解析
- 汽車維修人員培訓(xùn)管理制度
- GB∕T 37587-2019 埋地鋼質(zhì)彎管聚乙烯防腐帶耐蝕作業(yè)技術(shù)規(guī)范
- 消化內(nèi)科診療指南和技術(shù)操作規(guī)范
- 作文稿紙A4打印模板-
- CNAS質(zhì)量體系文件(質(zhì)量手冊(cè)程序文件)
- ojt問(wèn)答題未升版ojt204
- 五年級(jí)語(yǔ)文滲透法制教育滲透點(diǎn)教案呈現(xiàn)
- 貝雷片-潮白新河鋼棧橋及鋼平臺(tái)計(jì)算說(shuō)明書(shū)
- VF程序設(shè)計(jì)知識(shí)要點(diǎn)
- 凱普21種基因型HPV分型與其它比較
評(píng)論
0/150
提交評(píng)論