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

下載本文檔

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

文檔簡介

1、<p>  畢 業(yè) 論 文</p><p>  摘 要:倉庫管理系統(tǒng)是一個企業(yè)不可或缺的部分,高效的倉庫管理系統(tǒng)可以為企業(yè)的發(fā)展和經(jīng)營提供堅強的后盾。隨著科技的不斷發(fā)展,用計算機對倉庫進行管理,具有人工管理所無法比擬的優(yōu)點,例如:檢索迅速、查找方便、保密性好、成本低、壽命長等。這些優(yōu)點能極大地提高倉庫管理的效率, 使企業(yè)的倉庫管理井井有條,為企業(yè)的健康發(fā)展創(chuàng)造良好的條件。本文在分析現(xiàn)有管理系統(tǒng)開發(fā)

2、技術(shù)的基礎(chǔ)上,實現(xiàn)了以Eclipse為開發(fā)平臺的基于JSP的,以MySql作為后臺數(shù)據(jù)庫的倉庫管理系統(tǒng)。該系統(tǒng)主要具備基本信息管理、庫存管理、信息查詢、用戶管理等功能模塊。</p><p>  關(guān)鍵詞:倉庫管理,JSP,MySql數(shù)據(jù)庫</p><p>  Abstract: Warehouse management system is an indispensable part of t

3、he enterprise. A warehouse management system with high efficiency can provide a strong backing for the development and management of enterprises. With the development of technology,to manage the warehouse with computer h

4、as 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 mana</p&

5、gt;<p>  Keywords: Warehouse management, JSP, MySql database</p><p><b>  目 錄</b></p><p><b>  1 緒論4</b></p><p>  1.1 開發(fā)背景4</p><p>  1.

6、2 開發(fā)意義4</p><p>  1.3 本文組織結(jié)構(gòu)4</p><p>  2 系統(tǒng)解決方案5</p><p>  2.1 JSP語言概述5</p><p>  2.2 SSH框架5</p><p>  2.3 MySql數(shù)據(jù)庫5</p><p>  2.4 系統(tǒng)平臺環(huán)境5&

7、lt;/p><p><b>  3 需求分析6</b></p><p>  3.1 面向的用戶人群6</p><p>  3.2 功能需求分析6</p><p>  3.3 業(yè)務(wù)流程圖7</p><p>  4 數(shù)據(jù)庫設(shè)計9</p><p>  4.1 E-R模型

8、9</p><p>  4.2 數(shù)據(jù)模型12</p><p>  5 詳細(xì)設(shè)計15</p><p>  5.1 數(shù)據(jù)庫連接類15</p><p>  5.2 系統(tǒng)主要模塊16</p><p><b>  結(jié) 論34</b></p><p>  參 考 文 獻

9、35</p><p><b>  致 謝36</b></p><p><b>  緒論</b></p><p><b>  開發(fā)背景</b></p><p>  一直以來企業(yè)使用傳統(tǒng)人工的方式來管理文件庫存,這種管理方式存在許多缺點,如: 保密性差、效率低等,而且時間一長

10、,將產(chǎn)生大量的數(shù)據(jù)和文件, 這對于企業(yè)查找、更新和維護都帶來了很多的困難。由于缺乏科學(xué)的管理和管理工具,企業(yè)在業(yè)務(wù)上和管理上的安排都存在著許多不便。因而針對這些問題而開發(fā)的系統(tǒng)具有很好的前景。</p><p><b>  開發(fā)意義</b></p><p>  隨著時代的不斷發(fā)展,社會正在不斷向信息化時代邁進。由于能夠有效地收集和處理各種信息,提高辦事效率,電子自動化辦

11、公越來越被重視。而隨著互聯(lián)網(wǎng)技術(shù)的不斷發(fā)展,又為電子自動化辦公的發(fā)展提供了良好的前景。如今,很多企業(yè)已經(jīng)擁有了計算機設(shè)備,具備物質(zhì)條件,但很多工作仍由管理者手工操作完成,這就造成不必要的浪費。計算機流行的原因主要有以下幾個方面:</p><p>  1.計算機可以代替手工操作進行許多繁雜的工作;</p><p>  2.計算機可以節(jié)省大量資源;</p><p>  

12、3.計算機可以極大地提高人們的工作效率;</p><p>  4.計算機可以使敏感文檔更加安全;</p><p>  5.電子自動化辦公是先進生產(chǎn)力發(fā)展的重要標(biāo)志。</p><p>  綜上所述,用計算機開發(fā)的軟件系統(tǒng),替代人工操作進行管理,可以節(jié)約大量的人力、物力,是企業(yè)發(fā)展的必然趨勢[1]!</p><p><b>  本文組織

13、結(jié)構(gòu)</b></p><p>  本系統(tǒng)將以課本和一些課外書籍為參考,從系統(tǒng)開發(fā)背景→需求分析→概要設(shè)計→詳細(xì)設(shè)計→具體開發(fā)一步步對系統(tǒng)進行分析和設(shè)計。各個章節(jié)安排如下:</p><p>  第一章為緒論,簡述項目的開發(fā)背景和開發(fā)意義;</p><p>  第二章詳細(xì)介紹了項目開發(fā)的應(yīng)用技術(shù),比如JSP,框架和數(shù)據(jù)庫等;</p><p

14、>  第三章是需求分析,介紹了系統(tǒng)的設(shè)計目標(biāo)和系統(tǒng)的主要功能模塊。</p><p>  第四章是數(shù)據(jù)庫設(shè)計,在E-R模型的基礎(chǔ)上,再設(shè)計出相應(yīng)的邏輯模型。</p><p>  第五章根據(jù)系統(tǒng)功能模塊詳細(xì)介紹了各模塊的設(shè)計過程并給出部分實現(xiàn)代碼。</p><p><b>  系統(tǒng)解決方案</b></p><p>&l

15、t;b>  JSP語言概述</b></p><p>  JSP(Java Server Pages)是由Sun Microsystems公司倡導(dǎo)、許多公司參與一起建立的一種動態(tài)網(wǎng)頁技術(shù)標(biāo)準(zhǔn)。它的主要目的是將表示邏輯從Servlet中分離出來。它是在傳統(tǒng)的網(wǎng)頁HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP標(biāo)記(tag),從而形成JSP文件(*.jsp)。

16、所有程序操作都在服務(wù)器端執(zhí)行,網(wǎng)絡(luò)上傳送給客戶端的僅是得到的結(jié)果,這樣大大降低了對客戶瀏覽器的要求,即使客戶瀏覽器端不支持Java,也可以訪問JSP網(wǎng)頁。用JSP開發(fā)的Web應(yīng)用是跨平臺的,既能在Linux下運行,也能在其他操作系統(tǒng)上運行[2]。</p><p><b>  SSH框架</b></p><p>  SSH 在J2EE項目中表示了3種框架,即 Sprin

17、g + Struts +Hibernate。本系統(tǒng)采用MVC開發(fā)模式來編寫代碼,MVC全名是Model View Controller,是模型(model)-視圖(view)-控制器(controller)的縮寫[3]。Struts對Model,View和Controller都提供了對應(yīng)的組件。Spring是一個輕量級的控制反轉(zhuǎn)(IoC)和面向切面(AOP)的容器框架,它由Rod Johnson創(chuàng)建。它是為了解決企業(yè)應(yīng)用開發(fā)的復(fù)雜性而創(chuàng)

18、建的[4]。Spring使用基本的JavaBean來完成以前只可能由EJB完成的事情。 Hibernate是一個開放源代碼的對象關(guān)系映射框架,它對JDBC進行了非常輕量級的對象封裝,可以應(yīng)用在任何使用JDBC的場合,可以在Servlet/JSP的Web應(yīng)用中使用,也可以在應(yīng)用EJB的J2EE架構(gòu)中取代CMP,完成數(shù)據(jù)持久化的重任[5]。</p><p><b>  MySql數(shù)據(jù)庫</b>&

19、lt;/p><p>  MySQL是一個關(guān)系型數(shù)據(jù)庫管理系統(tǒng),由瑞典MySQL AB公司開發(fā),目前屬于Oracle公司。MySQL是一種關(guān)聯(lián)數(shù)據(jù)庫管理系統(tǒng),關(guān)聯(lián)數(shù)據(jù)庫將數(shù)據(jù)保存在不同的表中,而不是將所有數(shù)據(jù)放在一個大倉庫內(nèi),這樣就增加了速度并提高了靈活性。MySQL的SQL語言是用于訪問數(shù)據(jù)庫的最常用標(biāo)準(zhǔn)化語言。由于其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點,一般中小型網(wǎng)站的開發(fā)都選擇MySQL作為網(wǎng)站

20、數(shù)據(jù)庫[6]。</p><p><b>  系統(tǒng)平臺環(huán)境</b></p><p><b> ?。?)硬件環(huán)境:</b></p><p><b>  服務(wù)器:</b></p><p>  CPU: 2G或以上;</p><p>  內(nèi)存:1G RAM或以

21、上;</p><p>  硬盤:80G或以上;</p><p><b>  客戶端:</b></p><p>  CPU: 1G或以上;</p><p>  內(nèi)存:64MB以上內(nèi)存或更高;</p><p>  硬盤:20G或以上。</p><p> ?。?)軟件開發(fā)環(huán)境:&

22、lt;/p><p>  操作系統(tǒng):WindowsXP;</p><p>  所用工具:Eclipse,Navicat for MySQL;</p><p>  數(shù)據(jù)庫:MySQL。</p><p><b>  需求分析</b></p><p><b>  面向的用戶人群</b>&

23、lt;/p><p>  管理員:作為系統(tǒng)的管理員和維護者,對系統(tǒng)基本信息、倉庫管理等模塊進行數(shù)據(jù)的管理,并對系統(tǒng)的更新作出及時的響應(yīng),使得系統(tǒng)能更好地運行。</p><p>  普通用戶:作為系統(tǒng)的使用者,注冊登陸系統(tǒng)后,可以查詢系統(tǒng)基本信息、倉庫信息、修改個人信息等。</p><p><b>  功能需求分析</b></p><

24、;p>  圖3-1 系統(tǒng)功能模塊圖</p><p>  本系統(tǒng)是一款倉庫管理系統(tǒng),旨在對倉庫的自動化管理以適應(yīng)信息化社會的生產(chǎn)方式。根據(jù)倉庫管理系統(tǒng)的需求,劃分了倉庫的功能模塊,主要分為用戶管理模塊、入庫出庫模塊、倉庫查詢模塊、盤點統(tǒng)計模塊[7]。具體功能如圖3-1所示。</p><p><b>  業(yè)務(wù)流程圖</b></p><p> 

25、 該系統(tǒng)的用戶分為普通用戶和管理員。管理員擁有所有權(quán)限,而普通用戶只能進行查詢的操作。</p><p><b>  管理員模塊</b></p><p>  圖3-2 管理員使用流程圖</p><p>  管理員使用流程如圖3-2所示。</p><p><b>  登錄</b></p>

26、<p>  登陸界面包括賬號和密碼兩個文本框和身份選擇單選框,用戶登陸成功就會轉(zhuǎn)到系統(tǒng)主頁面,否則將會提示賬號密碼錯誤。</p><p><b>  查詢信息</b></p><p>  用戶登陸查詢信息界面可以對倉庫信息(倉庫、貨物、供應(yīng)商、部門、入庫單、出庫單)進行查詢。</p><p><b>  設(shè)置信息(管理員)&

27、lt;/b></p><p>  管理員用戶登陸設(shè)置信息界面可以對倉庫信息(倉庫、貨物、供應(yīng)商、部門、入庫單、出庫單)進行設(shè)置。</p><p><b>  添加記錄(管理員)</b></p><p>  管理員用戶登陸添加界面可以添加入庫和出庫信息。</p><p><b>  修改密碼</b&g

28、t;</p><p>  用戶可以修改自己的密碼,需要先驗證舊密碼,驗證成功后通過輸入兩次新密碼對密碼進行修改。</p><p><b>  用戶管理(管理員)</b></p><p>  管理員用戶可以對已添加的用戶權(quán)限進行修改,也可以刪除已存在的用戶。</p><p><b>  普通用戶模塊</b&

29、gt;</p><p>  圖3-3 普通用戶使用流程圖</p><p>  普通用戶使用流程如圖3-3所示。</p><p>  普通用戶只能進行查詢操作和修改個人信息。</p><p><b>  數(shù)據(jù)庫設(shè)計</b></p><p>  數(shù)據(jù)庫是一種存儲數(shù)據(jù)并對數(shù)據(jù)進行操作的工具。數(shù)據(jù)庫的作用

30、在于組織和表達信息,即數(shù)據(jù)庫就是相關(guān)信息的集合。本章從E-R模型的分析設(shè)計為切入點,重點介紹了數(shù)據(jù)庫的設(shè)計。根據(jù)倉庫管理系統(tǒng)的功能,將其E-R圖轉(zhuǎn)化為數(shù)據(jù)庫表,為系統(tǒng)的實現(xiàn)奠定了基礎(chǔ)。</p><p><b>  E-R模型</b></p><p>  E-R模型即實體-聯(lián)系模型,它是由實體集、屬性和聯(lián)系集構(gòu)成。實體集用矩形框表示,矩形框內(nèi)寫上實體名。實體的屬性用橢圓

31、框表示,框內(nèi)寫上屬性名,并用無向邊與其對應(yīng)的實體集相連。實體間的聯(lián)系用菱形框表示,菱形框中寫上以適當(dāng)?shù)暮x命名的名字,用無向連線將參加聯(lián)系的實體矩形框分別與菱形框相連,并在連線上標(biāo)明聯(lián)系的類型,即1—1、1—N或M—N。</p><p>  本系統(tǒng)的E-R模型主要包括部門實體、貨物實體、用戶實體、供應(yīng)商實體、倉庫實體、入庫單實體和出庫單實體共七個實體集和一個各實體聯(lián)系集。E-R模型如下文所述。</p>

32、<p>  部門實體用來存儲部門信息,E-R圖如圖4-1所示:</p><p>  圖4-1 部門實體E-R圖</p><p>  貨物實體用來存儲貨物信息,E-R圖如圖4-2所示:</p><p>  圖4-2 貨物實體E-R圖</p><p>  用戶實體用來存儲用戶信息,E-R圖如圖4-3所示:</p>&l

33、t;p>  圖4-3用戶實體E-R圖</p><p>  供應(yīng)商實體用來存儲供應(yīng)商信息,E-R圖如圖4-4所示:</p><p>  圖4-4供應(yīng)商實體E-R圖</p><p>  倉庫實體用來存儲倉庫信息,E-R圖如圖4-5所示:</p><p>  圖4-5倉庫實體E-R圖</p><p>  入庫單實體用來

34、存儲入庫單信息,E-R圖如圖4-6所示:</p><p>  圖4-6入庫單實體E-R圖</p><p>  出庫單實體用來存儲出庫單信息,E-R圖如圖4-7所示:</p><p>  圖4-7出庫單實體E-R圖</p><p>  8.各實體聯(lián)系E-R圖如圖4-8所示。用戶通過添加入庫單和出庫單記錄入庫信息和出庫信息,供應(yīng)商提供貨物,部門使

35、用貨物,一條記錄對應(yīng)一個供應(yīng)商或者部門,</p><p>  圖4-8 各實體聯(lián)系E-R圖</p><p><b>  數(shù)據(jù)模型</b></p><p>  根據(jù)4.1中分析得出的E-R圖,本系統(tǒng)采用MySql數(shù)據(jù)庫管理系統(tǒng),在MySql數(shù)據(jù)庫管理系統(tǒng)中新建名稱為mystorage的數(shù)據(jù)庫,本系統(tǒng)所使用的所有數(shù)據(jù)信息均將存儲于該數(shù)據(jù)庫中。以下列

36、舉數(shù)據(jù)表。</p><p>  部門表(department)</p><p><b>  表4-1 部門表</b></p><p>  貨物表(goods)</p><p><b>  表4-2 貨物表</b></p><p>  入庫表(instore)</p>

37、;<p><b>  表4-3 入庫表</b></p><p>  出庫表(outstore)</p><p><b>  表4-4 出庫表</b></p><p>  倉庫表(store)</p><p><b>  表4-5 倉庫表</b></p>

38、<p>  供應(yīng)商表(supplier)</p><p><b>  表4-6 供應(yīng)商表</b></p><p><b>  用戶表(user)</b></p><p><b>  表4-7 用戶表</b></p><p>  庫存表(stock)</p&g

39、t;<p><b>  表4-8 庫存表</b></p><p>  以上就是mystorage數(shù)據(jù)庫的數(shù)據(jù)表。</p><p><b>  詳細(xì)設(shè)計</b></p><p><b>  數(shù)據(jù)庫連接類</b></p><p>  在對數(shù)據(jù)庫連接的過程中,為了使代碼

40、更精簡,將對數(shù)據(jù)庫的連接方法封裝在DriverMana公共類中,其中包括數(shù)據(jù)庫連接方法getConn、ResultSet的關(guān)閉方法closers、PreparedStatement的關(guān)閉方法closepstmt、Connection的關(guān)閉方法closecon。以下即為代碼:</p><p>  public class DriverMana {</p><p>  public stati

41、c Connection getConn(){</p><p>  Connection con=null;</p><p><b>  try {</b></p><p>  Class.forName("com.mysql.jdbc.Driver");</p><p>  con=DriverMa

42、nager.getConnection("jdbc:mysql://localhost:3306/mystorage", "root", "root");</p><p>  } catch (ClassNotFoundException e) {</p><p>  e.printStackTrace();</p>

43、<p>  } catch (SQLException e) {</p><p>  e.printStackTrace();</p><p><b>  }</b></p><p>  return con;</p><p><b>  }</b></p><p&g

44、t;  public static void closers(ResultSet rs){</p><p>  if(rs!=null){</p><p><b>  try {</b></p><p>  rs.close();</p><p>  } catch (SQLException e) {</p>

45、;<p>  e.printStackTrace();</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  public static void closepstmt(Prep

46、aredStatement pstmt){</p><p>  if(pstmt!=null){</p><p><b>  try {</b></p><p>  pstmt.close();</p><p>  } catch (SQLException e) {</p><p>  e.pr

47、intStackTrace();</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  public static void closecon(Connection con){</p&g

48、t;<p>  if(con!=null){</p><p><b>  try {</b></p><p>  con.close();</p><p>  } catch (SQLException e) {</p><p>  e.printStackTrace();</p><p

49、><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  系統(tǒng)主要模塊</b></p><p

50、><b>  登錄模塊</b></p><p><b>  圖5-1 登錄界面</b></p><p>  本模塊主要用于對用戶身份進行鑒別。用戶有兩種身份:普通用戶和管理員。用戶通過單選框選擇登錄身份,通過表單輸入用戶名、密碼,系統(tǒng)根據(jù)用戶提供的信息對用戶進行身份鑒別。界面如圖5-1所示。</p><p><

51、b>  后臺代碼實現(xiàn):</b></p><p>  public void doPost(HttpServletRequest request, HttpServletResponse response)</p><p>  throws ServletException, IOException {</p><p>  String userNa

52、me=request.getParameter("username");</p><p>  String password=request.getParameter("paswrd");</p><p>  String userLevel=request.getParameter("userLevel");</p>

53、<p>  User luser=new User();</p><p>  luser.setUserName(userName);</p><p>  luser.setPassword(password);</p><p>  luser.setUserLevel(userLevel);</p><p>  ILoginD

54、ao loginDao=new LoginDaoImpl();</p><p>  User login=loginDao.getUser(luser);</p><p>  if(login!=null){</p><p>  HttpSession session=request.getSession();</p><p>  sessi

55、on.setAttribute("login", login);</p><p>  ServletContext context=this.getServletContext();</p><p>  RequestDispatcher dispatcher;</p><p>  if(login.getUserLevel().equals(&

56、quot;0")){</p><p>  dispatcher=context.getRequestDispatcher("/comUser.jsp");</p><p><b>  }</b></p><p><b>  else{</b></p><p>  dis

57、patcher=context.getRequestDispatcher("/manaUser.jsp");</p><p><b>  }</b></p><p>  dispatcher.forward(request, response);</p><p><b>  }</b></p>

58、;<p><b>  else{</b></p><p>  request.setAttribute("loginFail","登錄失敗");</p><p>  ServletContext context=this.getServletContext();</p><p>  Requ

59、estDispatcher dispatcher=context.getRequestDispatcher("/login.jsp");</p><p>  dispatcher.forward(request, response);</p><p><b>  }</b></p><p><b>  }</

60、b></p><p><b>  目錄生成模塊</b></p><p>  由登陸界面進入主界面后,總體界面如圖5-2所示:</p><p><b>  圖5-2 主界面</b></p><p>  畫面左邊即為目錄。目錄模塊主要用于生成目錄部分,菜單的折疊展開是使用javascript代碼實

61、現(xiàn)的。</p><p>  菜單展開折疊功能實現(xiàn)代碼:</p><p>  <script language="javascript"></p><p>  var divheight=130;</p><p>  var speed=11;</p><p><b>  var

62、 i=0;</b></p><p><b>  var s;</b></p><p><b>  var p=0;</b></p><p>  function doOpenClose(n){</p><p>  if(document.getElementById("bbb&

63、quot;+n).offsetHeight<11){</p><p><b>  i=0;</b></p><p><b>  inc(n);</b></p><p><b>  }</b></p><p><b>  else{</b></p

64、><p>  if(document.getElementById("bbb"+n).offsetHeight>divheight){</p><p>  p=divheight;</p><p><b>  inc2(n);</b></p><p><b>  }</b>&l

65、t;/p><p><b>  }</b></p><p><b>  }</b></p><p>  function inc(x){</p><p><b>  i=i+10;</b></p><p>  document.getElementById(&

66、quot;bbb"+x).style.height=i+"px";</p><p>  if(i>divheight){</p><p>  i=divheight-5;</p><p><b>  }</b></p><p>  var s=setTimeout("inc(

67、"+x+")",speed);</p><p>  if(i==125){</p><p>  window.clearTimeout(s);</p><p><b>  }</b></p><p><b>  }</b></p><p>  f

68、unction inc2(x){</p><p><b>  if(p>1){</b></p><p><b>  p=p-10;</b></p><p>  document.getElementById("bbb"+x).style.height=p+"px";</p

69、><p><b>  }</b></p><p>  var s=setTimeout("inc2("+x+")",speed);</p><p><b>  if(p==0){</b></p><p>  window.clearTimeout(s);</

70、p><p><b>  }</b></p><p><b>  }</b></p><p><b>  </script></b></p><p><b>  基本信息管理模塊</b></p><p>  基本信息管理模塊包

71、括供應(yīng)商管理、貨物管理、倉庫信息管理和部門管理。</p><p><b>  供應(yīng)商管理</b></p><p>  本功能用于對供應(yīng)商信息的記錄管理。管理員可以添加新的供應(yīng)商,修改已有的供應(yīng)商信息,刪除供應(yīng)商信息等。界面如圖5-4所示:</p><p>  圖5-4 供應(yīng)商管理界面</p><p><b> 

72、 主要代碼:</b></p><p><b>  添加供應(yīng)商</b></p><p>  public void doPost(HttpServletRequest request, HttpServletResponse response)</p><p>  throws ServletException, IOExceptio

73、n {</p><p>  request.setCharacterEncoding("utf-8");</p><p>  response.setContentType("text/html;charset=utf-8");</p><p>  String suppName=request.getParameter(&q

74、uot;suppName");</p><p>  String suppPerson=request.getParameter("suppPerson");</p><p>  String suppPhone=request.getParameter("suppPhone");</p><p>  String

75、suppAddr=request.getParameter("suppAddr");</p><p>  Supplier supplier=new Supplier();</p><p>  supplier.setSuppName(suppName);</p><p>  supplier.setSuppPerson(suppPerson);

76、</p><p>  supplier.setSuppPhone(suppPhone);</p><p>  supplier.setSuppAddr(suppAddr);</p><p>  ISupplierDao supplierDao=new SupplierDaoImpl();</p><p>  int i=supplierDao

77、.addSupplier(supplier);</p><p><b>  if(i>0){</b></p><p>  request.setAttribute("addPromt", "添加成功!");</p><p><b>  }</b></p><

78、p><b>  else{</b></p><p>  request.setAttribute("addPromt", "添加失??!");</p><p><b>  }</b></p><p>  this.getServletContext().getRequestDis

79、patcher("/addSupplier.jsp").forward(request, response);</p><p><b>  }</b></p><p><b>  刪除供應(yīng)商</b></p><p>  public void doPost(HttpServletRequest requ

80、est, HttpServletResponse response)</p><p>  throws ServletException, IOException {</p><p>  String[] dele=request.getParameterValues("dele");</p><p>  int suppId=0;</p&

81、gt;<p><b>  int rs=0;</b></p><p>  for(int i=0;i<dele.length;i++){</p><p>  suppId=Integer.parseInt(dele[i]);</p><p>  ISupplierDao supplierDao=new SupplierDao

82、Impl(); </p><p>  rs=supplierDao.deleSupplier(suppId);</p><p>  if(rs==0){</p><p><b>  break;</b></p><p><b>  }</b></p><p><b&g

83、t;  }</b></p><p><b>  if(rs>0){</b></p><p>  request.setAttribute("delePromt", "刪除成功!");</p><p><b>  }</b></p><p>&

84、lt;b>  else{</b></p><p>  request.setAttribute("delePromt", "刪除失??!");</p><p><b>  }</b></p><p>  this.getServletContext().getRequestDispatch

85、er("/toSupply").forward(request, response);</p><p><b>  }</b></p><p><b>  貨物管理</b></p><p>  本功能用于對貨物信息的記錄管理。管理員可以添加新的貨物,修改已有的貨物信息,刪除貨物信息等。界面如圖5-5所示

86、:</p><p>  圖5-5 貨物管理界面</p><p>  實現(xiàn)代碼與供應(yīng)商管理相似。</p><p><b>  倉庫信息管理</b></p><p>  本功能用于對倉庫信息的記錄管理。管理員可以添加新的倉庫,修改已有的倉庫信息,刪除倉庫信息等。界面如圖5-6所示:</p><p> 

87、 圖5-6 倉庫管理界面</p><p>  實現(xiàn)代碼與供應(yīng)商管理相似。</p><p><b>  部門管理</b></p><p>  圖5-7 部門管理界面</p><p>  本功能用于對部門信息的記錄管理。管理員可以添加新的部門,修改已有的部門信息,刪除部門信息等。界面如圖5-7所示。</p>&

88、lt;p>  實現(xiàn)代碼與供應(yīng)商管理相似。</p><p><b>  庫存管理模塊</b></p><p>  庫存管理模塊包括入庫管理、出庫管理和庫存管理。</p><p><b>  入庫管理</b></p><p>  本功能用于對貨物入庫的記錄管理。當(dāng)某種已有貨物進貨后,就可以在此處進

89、行添加新紀(jì)錄,查詢或刪除已有記錄等操作。界面如圖5-8所示:</p><p>  圖5-8 入庫管理界面</p><p><b>  主要代碼:</b></p><p><b>  添加入庫單</b></p><p>  public void doPost(HttpServletRequest r

90、equest, HttpServletResponse response)</p><p>  throws ServletException, IOException {</p><p>  response.setContentType("text/html");</p><p>  String instClass=request.getP

91、arameter("instClass");</p><p>  int goodsId=Integer.parseInt(request.getParameter("goodsId"));</p><p>  double instNum=Double.parseDouble(request.getParameter("instNum&q

92、uot;));</p><p>  int stoId=Integer.parseInt(request.getParameter("stoId"));</p><p>  Date date=new Date();</p><p>  HttpSession session=request.getSession();</p>&l

93、t;p>  User login=(User)session.getAttribute("login");</p><p>  int userId=login.getUserId();</p><p>  Instore instore=new Instore();</p><p>  instore.setGoodsId(goodsId

94、);</p><p>  instore.setInstClass(instClass);</p><p>  instore.setInstNum(instNum);</p><p>  instore.setStoId(stoId);</p><p>  instore.setInstTime(date);</p><

95、p>  instore.setModifyTime(date);</p><p>  instore.setUserId(userId);</p><p>  IInstoreDao instoreDao=new InstoreDaoImpl();</p><p><b>  int i=0;</b></p><p&g

96、t;  if(request.getParameter("instId").equals("")){</p><p>  i=instoreDao.addInstore(instore);</p><p><b>  if(i>0){</b></p><p>  IStockDao stockDao

97、=new StockDaoImpl();</p><p>  Stock stock=new Stock();</p><p>  stock.setStoId(stoId);</p><p>  stock.setGoodsId(goodsId);</p><p>  stock.setStock(instNum);</p>

98、<p><b>  int j=0;</b></p><p>  if(stockDao.queryStock(stock)){</p><p>  j=stockDao.updateStock(stock,1);</p><p><b>  }</b></p><p><b>

99、  else{</b></p><p>  j=stockDao.addStock(stock);</p><p><b>  }</b></p><p>  int volume=Integer.parseInt(request.getParameter("volume"));</p><p

100、>  IStorageDao storageDao=new StorageDaoImpl();</p><p>  i=storageDao.updateStorage(volume, stoId,1);</p><p>  if(i>0&&j>0){</p><p>  request.setAttribute("add

101、Promt", "添加成功!");</p><p><b>  }</b></p><p><b>  else{</b></p><p>  request.setAttribute("addPromt", "添加失??!");</p>&

102、lt;p><b>  }</b></p><p><b>  }</b></p><p><b>  else{</b></p><p>  request.setAttribute("addPromt", "添加失敗!");</p><

103、;p><b>  }</b></p><p><b>  }</b></p><p><b>  else{</b></p><p>  int instId=Integer.parseInt(request.getParameter("instId"));</p>

104、;<p>  instore.setInstId(instId);</p><p>  instore.setModifyTime(new Date());</p><p>  i=instoreDao.updateInstore(instore);</p><p><b>  if(i>0){</b></p>

105、<p>  request.setAttribute("modifyPromt", "修改成功!");</p><p><b>  }</b></p><p><b>  else{</b></p><p>  request.setAttribute("mod

106、ifyPromt", "修改失敗!");</p><p><b>  }</b></p><p><b>  }</b></p><p>  this.getServletContext().getRequestDispatcher("/toAddInstore").for

107、ward(request, response);</p><p><b>  }</b></p><p><b>  刪除入庫單</b></p><p>  public void doPost(HttpServletRequest request, HttpServletResponse response)</p&

108、gt;<p>  throws ServletException, IOException {</p><p>  String[] dele=request.getParameterValues("dele");</p><p>  int instId=0;</p><p><b>  int rs=0;</b&

109、gt;</p><p>  for(int i=0;i<dele.length;i++){</p><p>  instId=Integer.parseInt(dele[i]);</p><p>  IInstoreDao instoreDao=new InstoreDaoImpl();</p><p>  rs=instoreDao.

110、deleInstore(instId);</p><p>  if(rs==0){</p><p><b>  break;</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  i

111、f(rs>0){</b></p><p>  request.setAttribute("delePromt", "刪除成功!");</p><p><b>  }</b></p><p><b>  else{</b></p><p>  

112、request.setAttribute("delePromt", "刪除失敗!");</p><p><b>  }</b></p><p>  this.getServletContext().getRequestDispatcher("/toInstore").forward(request, resp

113、onse);</p><p><b>  }</b></p><p><b>  修改入庫單</b></p><p>  public void doPost(HttpServletRequest request, HttpServletResponse response)</p><p>  th

114、rows ServletException, IOException {</p><p>  String[] dele=request.getParameterValues("dele");</p><p>  int instId=0;</p><p><b>  int rs=0;</b></p><

115、;p>  for(int i=0;i<dele.length;i++){</p><p>  instId=Integer.parseInt(dele[i]);</p><p>  IInstoreDao instoreDao=new InstoreDaoImpl();</p><p>  rs=instoreDao.deleInstore(instId

116、);</p><p>  if(rs==0){</p><p><b>  break;</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  if(rs>0){</b&

117、gt;</p><p>  request.setAttribute("delePromt", "刪除成功!");</p><p><b>  }</b></p><p><b>  else{</b></p><p>  request.setAttribu

118、te("delePromt", "刪除失?。?quot;);</p><p><b>  }</b></p><p>  this.getServletContext().getRequestDispatcher("/toInstore").forward(request, response);</p>

119、<p><b>  }</b></p><p><b>  出庫管理</b></p><p>  本功能用于對貨物出庫的記錄管理。當(dāng)某部門需要某種貨物時,就可以在此處進行添加新紀(jì)錄,查詢或刪除已有記錄等操作。界面如圖5-9所示:</p><p>  圖5-9 出庫管理界面</p><p>

120、  功能實現(xiàn)代碼與入庫管理模塊相似。</p><p><b>  信息查詢模塊</b></p><p>  本模塊用于對數(shù)據(jù)進行集中查詢處理。管理員可以根據(jù)需要查詢供應(yīng)商、貨物、倉庫、部門、入庫單、出庫單信息,并可以對其進行修改、刪除操作。</p><p><b>  供應(yīng)商信息查詢</b></p><

121、p>  本功能主要實現(xiàn)對供應(yīng)商信息的查詢,用戶可以根據(jù)供應(yīng)商編號或供應(yīng)商名稱等對供應(yīng)商信息進行查詢,界面如圖5-10所示:</p><p>  圖5-10 供應(yīng)商信息查詢界面</p><p><b>  主要代碼:</b></p><p>  public void doPost(HttpServletRequest request, H

122、ttpServletResponse response)</p><p>  throws ServletException, IOException {</p><p>  request.setCharacterEncoding("utf-8");</p><p>  response.setContentType("text/ht

123、ml;charset=utf-8");</p><p>  String queryCon=request.getParameter("queryCon");</p><p>  if(queryCon==null){</p><p>  queryCon=(String)request.getAttribute("query

124、Con");</p><p><b>  }</b></p><p>  String standa=request.getParameter("standa");</p><p>  if(standa==null){</p><p>  standa=(String)request.ge

125、tAttribute("standa");</p><p><b>  }</b></p><p>  request.setAttribute("queryCon", queryCon);</p><p>  request.setAttribute("standa", standa

126、);</p><p>  List<Supplier> suppList=new ArrayList<Supplier>();</p><p>  ISupplierDao supplierDao=new SupplierDaoImpl();</p><p>  if(standa.equals("id")){</p

127、><p>  int suppId=Integer.parseInt(queryCon);</p><p>  suppList=supplierDao.getSupplier(suppId);</p><p><b>  }</b></p><p>  else if(standa.equals("name&qu

128、ot;)){</p><p>  suppList=supplierDao.getSupplier(queryCon);</p><p><b>  }</b></p><p>  request.setAttribute("suppList", suppList);</p><p>  this.g

129、etServletContext().getRequestDispatcher("/querySupplier.jsp").forward(request, response);</p><p><b>  }</b></p><p><b>  貨物信息查詢</b></p><p>  本功能主要實現(xiàn)

130、對貨物信息的查詢,用戶可以根據(jù)貨物編號或貨物名稱等對貨物信息進行查詢,界面如圖5-11所示:</p><p>  圖5-11 貨物信息查詢界面</p><p>  實現(xiàn)代碼與供應(yīng)商信息查詢相似。</p><p><b>  倉庫信息查詢</b></p><p>  本功能主要實現(xiàn)對倉庫信息的查詢,用戶可以根據(jù)倉庫編號或倉

131、庫負(fù)責(zé)人等對倉庫信息進行查詢,界面如圖5-12所示:</p><p>  圖5-12 倉庫信息查詢界面</p><p>  實現(xiàn)代碼與供應(yīng)商信息查詢相似。</p><p><b>  部門信息查詢</b></p><p>  本功能主要實現(xiàn)對部門信息的查詢,用戶可以根據(jù)部門編號或部門名稱等對部門信息進行查詢,界面如圖5-

132、13所示:</p><p>  圖5-13 部門信息查詢界面</p><p>  實現(xiàn)代碼與供應(yīng)商信息查詢相似。</p><p><b>  入庫單信息查詢</b></p><p>  本功能主要實現(xiàn)對入庫單信息的查詢,用戶可以根據(jù)入庫單編號或入庫貨物等對入庫單信息進行查詢,界面如圖5-14所示:</p>

133、<p>  圖5-14 入庫單信息查詢界面</p><p>  實現(xiàn)代碼與供應(yīng)商信息查詢相似。</p><p><b>  出庫單信息查詢</b></p><p>  本功能主要實現(xiàn)對出庫單信息的查詢,用戶可以根據(jù)出庫單編號或出庫貨物等對貨物信息進行查詢,界面如圖5-15所示:</p><p>  圖5-15

134、出庫單信息查詢界面</p><p>  實現(xiàn)代碼與供應(yīng)商信息查詢相似。</p><p><b>  用戶管理模塊</b></p><p>  本模塊用于對系統(tǒng)用戶進行操作。管理員可以進行添加新用戶,修改或刪除已有用戶等操作。界面如圖5-16所示:</p><p>  圖5-16 用戶管理界面</p><

溫馨提示

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

最新文檔

評論

0/150

提交評論