版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
倉(cāng)庫(kù)貨物管理系統(tǒng)概述(共33頁(yè))PAGEPAGE1————————————————————————————————作者:————————————————————————————————日期:?名目TOC\o"1-3"\h\uHYPERLINK\l_Toc253621項(xiàng)目介紹1HYPERLINK\l_Toc91971.1項(xiàng)目名稱(chēng)1HYPERLINK\l_Toc26361.2項(xiàng)目主題1HYPERLINK\l_Toc32751.2.1課題來(lái)源1HYPERLINK\l_Toc49061.2.2爭(zhēng)辯現(xiàn)狀1HYPERLINK\l_Toc26631.3設(shè)計(jì)目的和意義2HYPERLINK\l_Toc107021.3.1可行性爭(zhēng)辯2HYPERLINK\l_Toc40152相關(guān)理論和技術(shù)3HYPERLINK\l_Toc223952.1C/S模式3HYPERLINK\l_Toc7002.2SQLServer20083HYPERLINK\l_Toc277122.3JDK4HYPERLINK\l_Toc215842.4APACHE4HYPERLINK\l_Toc151013需求分析4HYPERLINK\l_Toc174853.1任務(wù)概述4HYPERLINK\l_Toc252243.1.1目標(biāo)4HYPERLINK\l_Toc170913.1.2運(yùn)行環(huán)境4HYPERLINK\l_Toc299483.2業(yè)務(wù)流程分析5HYPERLINK\l_Toc67903.3數(shù)據(jù)流分析6HYPERLINK\l_Toc57493.3.1數(shù)據(jù)編碼6HYPERLINK\l_Toc147063.3.2數(shù)據(jù)字典6HYPERLINK\l_Toc140283.4功能需求分析7HYPERLINK\l_Toc193924概要設(shè)計(jì)8HYPERLINK\l_Toc192315規(guī)律設(shè)計(jì)9HYPERLINK\l_Toc4406界面設(shè)計(jì)9HYPERLINK\l_Toc264706.1登陸界面9HYPERLINK\l_Toc105246.2管理員界面PAGEREF_Toc1052410HYPERLINK\l_Toc77176.3倉(cāng)庫(kù)管理界面PAGEREF_Toc771711HYPERLINK\l_Toc64596.4零件管理界面PAGEREF_Toc645912HYPERLINK\l_Toc318607總結(jié)PAGEREF_Toc3186014HYPERLINK\l_Toc22058參考文獻(xiàn)PAGEREF_Toc220515HYPERLINK\l_Toc22059附錄PAGEREF_Toc2205161項(xiàng)目介紹1.1項(xiàng)目名稱(chēng)倉(cāng)庫(kù)貨物管理系統(tǒng)1.2項(xiàng)目主題1.2.1課題來(lái)源隨著計(jì)算機(jī)信息技術(shù)的不斷普及與進(jìn)展,計(jì)算機(jī)的信息管理系統(tǒng)對(duì)企事業(yè)的重要性顯得越來(lái)越重要。倉(cāng)庫(kù)貨物管理系統(tǒng)作為一個(gè)企業(yè)不行或缺的一部分,他的功能與發(fā)揮的作用對(duì)于企業(yè)的決策者和管理者來(lái)說(shuō)都是至關(guān)重要的一部分。人們始終以來(lái)使用的傳統(tǒng)人工管理倉(cāng)庫(kù)的方式,這種管理方式有著諸多缺點(diǎn),如查詢(xún)、錄入的效率低下、保密性不好等。并且隨著時(shí)間的不斷推移產(chǎn)生的文檔,數(shù)據(jù)對(duì)管理者的更新、維護(hù)帶來(lái)巨大的挑戰(zhàn)與困難。所以需要開(kāi)發(fā)一個(gè)倉(cāng)庫(kù)貨物管理系統(tǒng)為企業(yè)用戶供應(yīng)充分的信息和查詢(xún)、管理手段。作為計(jì)算機(jī)應(yīng)用的一部分,使用計(jì)算機(jī)對(duì)產(chǎn)品倉(cāng)庫(kù)信息進(jìn)行管理,具有人工管理無(wú)法比擬的有點(diǎn),它檢索快速、查找便利、牢靠性高、存儲(chǔ)量大、保密性好、壽命長(zhǎng)、成本低等諸多有點(diǎn),可以削減更多人力物力的投入。管理信息化也是企業(yè)倉(cāng)庫(kù)管理科學(xué)化、正規(guī)化,與世界接軌的重要條件。倉(cāng)庫(kù)管理涉及貨物管理、盤(pán)點(diǎn)管理、倉(cāng)庫(kù)管理、入庫(kù)管理、出庫(kù)管理、庫(kù)存管理等業(yè)務(wù),這些業(yè)務(wù)涉及大量的數(shù)據(jù)和信息,而且對(duì)這些數(shù)據(jù)的信息的精確性、準(zhǔn)時(shí)性都要求格外高,任何錯(cuò)誤和遺漏都會(huì)造成公司的損失,若接受純?nèi)斯さ姆椒ㄟM(jìn)行管理有肯定的難度。因此,接受計(jì)算機(jī)技術(shù)實(shí)現(xiàn)倉(cāng)庫(kù)管理是很有必要的,是提高企業(yè)管理水平的有效方法。1.2.2爭(zhēng)辯現(xiàn)狀現(xiàn)在國(guó)內(nèi)外對(duì)此類(lèi)系統(tǒng)的開(kāi)發(fā)與爭(zhēng)辯也是很有有用性的,基本上能滿足各類(lèi)企業(yè)也的自身特點(diǎn),來(lái)進(jìn)行倉(cāng)庫(kù)方面的管理,同時(shí),改進(jìn)系統(tǒng)又都在不斷地深化與進(jìn)展,來(lái)使用更多的企業(yè),一般都能運(yùn)用于各企業(yè)的倉(cāng)庫(kù)管理,但是都沒(méi)有針對(duì)大眾的廣泛應(yīng)用,只能運(yùn)用某個(gè)企業(yè)或單位,這還需要進(jìn)一步開(kāi)發(fā)與實(shí)踐。我國(guó)物流的進(jìn)展在整體上和發(fā)達(dá)國(guó)家相比無(wú)論是進(jìn)展規(guī)模還是進(jìn)展的程度都有著不小的差距。在管理方面,發(fā)達(dá)國(guó)家的倉(cāng)庫(kù)基本上已經(jīng)電子化、無(wú)紙化,國(guó)內(nèi)倉(cāng)庫(kù)基本上仍舊是臺(tái)賬管理,絕大多數(shù)倉(cāng)庫(kù)沒(méi)有信息化的系統(tǒng)。今后此類(lèi)的軟件將會(huì)向條形碼倉(cāng)庫(kù)管理系統(tǒng)進(jìn)展,現(xiàn)階段,伴隨著物流及管理信息化、網(wǎng)絡(luò)化的進(jìn)展,應(yīng)用條形二維碼進(jìn)行倉(cāng)庫(kù)管理、實(shí)現(xiàn)倉(cāng)庫(kù)作業(yè)自動(dòng)化,將是一個(gè)必定的進(jìn)展趨勢(shì),也是需要迫切解決的一個(gè)現(xiàn)實(shí)問(wèn)題。條形碼管理在計(jì)算機(jī)信息化技術(shù)日益普及的今日有著格外重要的意義,商品貼上條形碼不僅可以削減輸入貨物信息的時(shí)間,還可以削減人工輸入造成的錯(cuò)誤。補(bǔ)單可以提高作業(yè)效率,還能確保貨物信息輸入的正確性。另外,倉(cāng)庫(kù)管理需要實(shí)現(xiàn)信息化和可視化,將來(lái)企業(yè)倉(cāng)庫(kù)將不是個(gè)單純的倉(cāng)庫(kù),他將擁有一個(gè)實(shí)實(shí)在在裝著貨物的倉(cāng)庫(kù),還擁有一個(gè)數(shù)據(jù)眾多管理便利的數(shù)據(jù)倉(cāng)庫(kù),對(duì)其中的貨物進(jìn)行編碼、管理。形象的說(shuō),貨架上的號(hào)碼就是貨物的地址,從而避開(kāi)了貨物的分揀和提取時(shí)的翻箱倒柜式的查找。倉(cāng)庫(kù)管理的信息化在高速進(jìn)展的信息時(shí)代勢(shì)在必行而且將給企業(yè)帶來(lái)極大的掛念。1.3設(shè)計(jì)目的和意義在這樣一個(gè)信息化的時(shí)代,將計(jì)算機(jī)管理應(yīng)用于倉(cāng)庫(kù)的日常管理已是大勢(shì)所趨,它可以為企業(yè)帶來(lái)意想不到的效益,同時(shí)為企業(yè)的飛速進(jìn)展打好堅(jiān)實(shí)的基礎(chǔ)。接受計(jì)算機(jī)管理信息系統(tǒng)已成為倉(cāng)庫(kù)管理科學(xué)化和現(xiàn)代化的重要標(biāo)志,它給企業(yè)管理帶來(lái)了明顯的經(jīng)濟(jì)效益和社會(huì)效益。主要體現(xiàn)在:可以削減輸入庫(kù)過(guò)程中繁瑣的流程,提高倉(cāng)庫(kù)人員的工作效率。倉(cāng)庫(kù)管理系統(tǒng)實(shí)現(xiàn)自動(dòng)化之后,完全有力量削減出入庫(kù)管理以及庫(kù)存管理中的諸多問(wèn)題,不但節(jié)省開(kāi)支、提高企業(yè)效率,還可以減輕工作人員的壓力。倉(cāng)庫(kù)貨物管理系統(tǒng)主要目的是為了實(shí)現(xiàn)企業(yè)倉(cāng)庫(kù)管理系統(tǒng)化、規(guī)范化和自動(dòng)化,從而提高企業(yè)管理效率、增加企業(yè)收入。它完全可以用來(lái)取代原來(lái)倉(cāng)庫(kù)中使用人工管理的方式,并且可以避開(kāi)由于人為失誤造成的損失,為準(zhǔn)時(shí)、精確、高效的完成倉(cāng)庫(kù)管理供應(yīng)了強(qiáng)有力的工具和管理手段。倉(cāng)庫(kù)管理系統(tǒng)是一個(gè)中小型數(shù)據(jù)管理系統(tǒng),它易上手、已操作、界面美觀、平安性強(qiáng)。整個(gè)系統(tǒng)將由貨物管理、出入庫(kù)管理、基本資料管理、倉(cāng)區(qū)管理等模塊,用戶通過(guò)相應(yīng)的模塊,對(duì)倉(cāng)庫(kù)里的物品的基本狀況進(jìn)行操作,通過(guò)簡(jiǎn)潔的操作即可輕松的管理倉(cāng)庫(kù)。1.3.1可行性爭(zhēng)辯倉(cāng)庫(kù)管理系統(tǒng)是為了實(shí)現(xiàn)企業(yè)產(chǎn)品管理的系統(tǒng)化、規(guī)范化和自動(dòng)化,從而提高企業(yè)管理效率而設(shè)計(jì)的。它完全取代了原來(lái)始終用人工管理的工作方式,避開(kāi)了由于管理人員的工作疏忽以及管理質(zhì)量問(wèn)題所造成的各種錯(cuò)誤,為準(zhǔn)時(shí)、精確、高效的完成倉(cāng)庫(kù)管理供應(yīng)了強(qiáng)有力的工具和管理手段。倉(cāng)庫(kù)管理系統(tǒng)是一個(gè)中小型數(shù)據(jù)庫(kù)管理系統(tǒng),它界面美觀、操作簡(jiǎn)潔、平安性高,基本滿足了倉(cāng)庫(kù)管理的要求。本系統(tǒng)的開(kāi)發(fā)語(yǔ)言接受的是JAVA,開(kāi)發(fā)環(huán)境接受的是JDK,數(shù)據(jù)庫(kù)接受SQLServer5.0,具有一般系統(tǒng)的數(shù)據(jù)功能,如數(shù)據(jù)查詢(xún),修改和刪除等。倉(cāng)庫(kù)管理系統(tǒng)在運(yùn)行階段,效果好,數(shù)據(jù)精確性高,提高了工作效率,同時(shí)也實(shí)現(xiàn)了倉(cāng)庫(kù)管理計(jì)算機(jī)化。2相關(guān)理論和技術(shù)2.1C/S模式C/S模式分為客戶機(jī)和服務(wù)器兩層,客戶機(jī)具有了肯定的數(shù)據(jù)存儲(chǔ)和數(shù)據(jù)處理力量。通過(guò)將應(yīng)用軟件的算法和數(shù)據(jù)合理安排給客戶端和服務(wù)端的方法,可以降低服務(wù)器的負(fù)載,發(fā)揮客戶端的力量。本文要爭(zhēng)辯的倉(cāng)庫(kù)系統(tǒng)就適用于倉(cāng)庫(kù)這樣用戶數(shù)目不多的局域網(wǎng)中。C/S模式只依靠于企業(yè)內(nèi)部網(wǎng)絡(luò)的應(yīng)用系統(tǒng),即無(wú)論企業(yè)是否能夠上網(wǎng),都不影響其應(yīng)用。綜合考慮以上的因素,本系統(tǒng)最終打算接受C/S模式開(kāi)發(fā),充分發(fā)揮客戶端的處理力量。2.2SQLServer2008SQL是英文StructuredQueryLanguage的縮寫(xiě),就是人們所說(shuō)的結(jié)構(gòu)化查詢(xún)語(yǔ)言。SQL語(yǔ)句可以用來(lái)執(zhí)行各種各樣的操作,例如更新數(shù)據(jù)庫(kù)中的數(shù)據(jù),從數(shù)據(jù)庫(kù)中提取數(shù)據(jù)等。SQL語(yǔ)言的主要功能就是同各種數(shù)據(jù)庫(kù)建立聯(lián)系,進(jìn)行溝通。雖然很多數(shù)據(jù)庫(kù)在SQL的基礎(chǔ)上進(jìn)行了改進(jìn)和升級(jí),但是包括增、刪】改、查等標(biāo)準(zhǔn)的SQL命令仍舊可以用來(lái)完成幾乎全部的數(shù)據(jù)庫(kù)操作。這個(gè)平臺(tái)是可信任、高效、只能的,使得企業(yè)的倉(cāng)庫(kù)貨物管理系統(tǒng)使用他時(shí)可以有很高的平安性、牢靠性,并且可以降低開(kāi)發(fā)管理數(shù)據(jù)基本設(shè)施的成本。2.3JDKJDK是Java語(yǔ)言的軟件開(kāi)發(fā)工具包,主要用于移動(dòng)設(shè)備、嵌入式設(shè)備上的java應(yīng)用程序。JDK(JavaDevelopmentKit)是SunMicrosystems針對(duì)Java開(kāi)發(fā)員的產(chǎn)品。自從Java推出以來(lái),JDK已經(jīng)成為使用最廣泛的JavaSDK(Softwaredevelopmentkit)。JDK是整個(gè)Java的核心,包括了Java運(yùn)行環(huán)境(JavaRuntimeEnvirnment),一堆Java工具和Java基礎(chǔ)的類(lèi)庫(kù)(rt.jar)。不論什么Java應(yīng)用服務(wù)器實(shí)質(zhì)都是內(nèi)置了某個(gè)版本的JDK。因此把握JDK是學(xué)好Java的第一步。最主流的JDK是Sun公司發(fā)布的JDK,除了Sun之外,還有很多公司和組織都開(kāi)發(fā)了自己的JDK,例如IBM公司開(kāi)發(fā)的JDK,BEA公司的Jrocket,還有GNU組織開(kāi)發(fā)的JDK等等。其中IBM的JDK包含的JVM(JavaVirtualMachine)運(yùn)行效率要比SunJDK包含的JVM高出很多。而特地運(yùn)行在x86平臺(tái)的Jrocket在服務(wù)端運(yùn)行效率也要比SunJDK好很多。但不管怎么說(shuō),我們還是需要先把SunJDK把握好。從SUN的JDK5.0開(kāi)頭,供應(yīng)了泛型等格外有用的功能,其版本信息也不再連續(xù)以前的1.2,1.3,1.4,而是變成了5.0,6.0了。從6.0開(kāi)頭,其運(yùn)行效率得到了格外大的提高,尤其是在桌面應(yīng)用方面。JDK本身使用了Java語(yǔ)言編寫(xiě),在我們下載的安裝包里,有一個(gè)src.zip,里面就是JDK的源代碼。版本SE(J2SE),standardedition,標(biāo)準(zhǔn)版,是我們通常用的一個(gè)版本,從JDK5.0開(kāi)頭,改名為JavaSE。EE(J2EE),enterpsiseedtion,企業(yè)版,使用這種JDK開(kāi)發(fā)J2EE應(yīng)用程序,從JDK5.0開(kāi)頭,改名為JavaEE。ME(J2ME),microedtion,主要用于移動(dòng)設(shè)備、嵌入式設(shè)備上的java應(yīng)用程序,從JDK5.0開(kāi)頭,改名為JavaME。2.4APACHEApacheHTTPServer(簡(jiǎn)稱(chēng)Apache)是Apache軟件基金會(huì)的一個(gè)開(kāi)放源碼的網(wǎng)頁(yè)服務(wù)器,可以在大多數(shù)計(jì)算機(jī)操作系統(tǒng)中運(yùn)行,由于其多平臺(tái)和平安性被廣泛使用,是最流行的Web服務(wù)器端軟件之一。它快速、牢靠并且可通過(guò)簡(jiǎn)潔的API擴(kuò)展,將Perl/Python等解釋器編譯到服務(wù)器中。ApacheHTTP服務(wù)器是一個(gè)模塊化的服務(wù)器,源于NCSAhttpd服務(wù)器,經(jīng)過(guò)多次修改,成為世界使用排名第一的Web服務(wù)器軟件。它可以運(yùn)行在幾乎全部廣泛使用的計(jì)算機(jī)平臺(tái)上。Apache源于NCSAhttpd服務(wù)器,經(jīng)過(guò)多次修改,成為世界上最流行的Web服務(wù)器軟件之一。Apache取自“apat(yī)chyserver”的讀音,意思是布滿補(bǔ)丁的服務(wù)器,由于它是自由軟件,所以不斷有人來(lái)為它開(kāi)發(fā)新的功能、新的特性、修改原來(lái)的缺陷。Apache的特點(diǎn)是簡(jiǎn)潔、速度快、性能穩(wěn)定,并可做代理服務(wù)器來(lái)使用。3需求分析3.1任務(wù)概述經(jīng)過(guò)調(diào)查,對(duì)倉(cāng)庫(kù)管理的業(yè)務(wù)流程進(jìn)行分析。庫(kù)存的變化通常是通過(guò)入庫(kù)、出庫(kù)操作來(lái)進(jìn)行。系統(tǒng)對(duì)每個(gè)入庫(kù)操作均要求用戶填寫(xiě)入庫(kù)單,對(duì)每個(gè)出庫(kù)操作均要求用戶填寫(xiě)出庫(kù)單。在出入庫(kù)操作同時(shí)可以進(jìn)行增加、刪除和修改等操作。用戶可以隨時(shí)進(jìn)行各種查詢(xún)、統(tǒng)計(jì)、報(bào)表打印、賬目核對(duì)等工作。另外,也可以用圖表形式來(lái)反映查詢(xún)結(jié)果。3.1.1目標(biāo)①界面設(shè)計(jì)要求盡量友好、美觀,應(yīng)供應(yīng)登錄界面,并考慮用戶權(quán)限問(wèn)??題;②對(duì)各種信息應(yīng)供應(yīng)錄入、刪除和查詢(xún)功能;③具有對(duì)零件的基本信息進(jìn)行統(tǒng)計(jì)的功能;④具有管理員的基本信息進(jìn)行統(tǒng)計(jì)的功能;⑤具有倉(cāng)庫(kù)的基本信息進(jìn)行統(tǒng)計(jì)的功能;3.1.2運(yùn)行環(huán)境Windows7操作系統(tǒng)、MicrosoftSQLServer5.0數(shù)據(jù)庫(kù)管理系統(tǒng)、Myeclipse6.0、Tomacat5.5.28、IE掃瞄器、JDK、JDBC3.2業(yè)務(wù)流程分析倉(cāng)庫(kù)貨物管理系統(tǒng)主要業(yè)務(wù)流程如下:銷(xiāo)售商提出訂單,倉(cāng)庫(kù)業(yè)務(wù)員進(jìn)行審核,確認(rèn)訂單無(wú)誤、貨物數(shù)量足夠出庫(kù),則通過(guò)審核,向銷(xiāo)售商發(fā)貨,修改數(shù)據(jù)庫(kù)數(shù)據(jù)后完成出庫(kù)流程。出庫(kù)流程圖如圖所示。倉(cāng)庫(kù)業(yè)務(wù)員向供貨商發(fā)出訂單,供貨商依據(jù)訂單向倉(cāng)庫(kù)發(fā)貨,形成發(fā)貨單,經(jīng)倉(cāng)庫(kù)管理員審核,修改數(shù)據(jù)庫(kù)數(shù)據(jù)后完成入庫(kù)流程。3.3數(shù)據(jù)流分析3.3.1數(shù)據(jù)編碼為了數(shù)據(jù)流圖更加易懂以及數(shù)據(jù)項(xiàng)、數(shù)據(jù)流便于使用,要對(duì)數(shù)據(jù)進(jìn)行編碼,用一個(gè)編碼符合代表一條信息或一串?dāng)?shù)據(jù)。對(duì)數(shù)據(jù)進(jìn)行編碼可以便利地進(jìn)行分類(lèi)操作。以下是系統(tǒng)分析過(guò)程中常用的數(shù)據(jù)編碼:3.3.2數(shù)據(jù)字典數(shù)據(jù)字典是數(shù)據(jù)庫(kù)的重要組成部分。它存放有數(shù)據(jù)庫(kù)所用的有關(guān)信息,對(duì)用戶來(lái)說(shuō)是一組只讀的表。下面是對(duì)數(shù)據(jù)流圖中消滅的部分?jǐn)?shù)據(jù)流和數(shù)據(jù)項(xiàng)的描述,便利讀者快速了解數(shù)據(jù)流組成和數(shù)據(jù)項(xiàng)內(nèi)容。數(shù)據(jù)流①入庫(kù)信息說(shuō)明:即將加入倉(cāng)庫(kù)的貨物的信息數(shù)據(jù)流來(lái)源:入庫(kù)信息表數(shù)據(jù)流流向:倉(cāng)庫(kù)管理員數(shù)據(jù)流組成:入庫(kù)編號(hào)+貨物編號(hào)+數(shù)量+單價(jià)+總金額+入庫(kù)時(shí)間+經(jīng)辦人+保管人+入庫(kù)倉(cāng)庫(kù)+備注②出庫(kù)信息數(shù)據(jù)流來(lái)源:出庫(kù)信息表數(shù)據(jù)流流向:倉(cāng)庫(kù)管理員數(shù)據(jù)流組成:出庫(kù)編號(hào)+貨物編號(hào)+數(shù)量+單價(jià)+總金額+出庫(kù)時(shí)間+經(jīng)辦人+保管人+出庫(kù)倉(cāng)庫(kù)+備注③貨物信息說(shuō)明:對(duì)倉(cāng)庫(kù)中的縮影貨物的信息的統(tǒng)計(jì)數(shù)據(jù)流來(lái)源:貨物信息表數(shù)據(jù)流流向:倉(cāng)庫(kù)管理員數(shù)據(jù)流組成:貨物編號(hào)+貨物名稱(chēng)+貨物型號(hào)+類(lèi)型+單價(jià)+倉(cāng)庫(kù)編號(hào)④客戶信息說(shuō)明:全部客戶及供應(yīng)商的信息。數(shù)據(jù)流來(lái)源:客戶信息表數(shù)據(jù)流流向:倉(cāng)庫(kù)管理員數(shù)據(jù)流組成:客戶編號(hào)+客戶名稱(chēng)+客戶地址+客戶電話+客戶類(lèi)型⑤倉(cāng)庫(kù)信息數(shù)據(jù)流來(lái)源:倉(cāng)庫(kù)信息表數(shù)據(jù)流流向:倉(cāng)庫(kù)管理員數(shù)據(jù)流組成:倉(cāng)庫(kù)編號(hào)+倉(cāng)庫(kù)名稱(chēng)+倉(cāng)庫(kù)狀態(tài)+倉(cāng)庫(kù)管理員⑥庫(kù)存信息數(shù)據(jù)流來(lái)源:庫(kù)存表數(shù)據(jù)流流向:倉(cāng)庫(kù)管理員數(shù)據(jù)流組成:庫(kù)存編號(hào)+倉(cāng)庫(kù)編號(hào)+貨物編號(hào)+在庫(kù)數(shù)量+預(yù)警標(biāo)志位+最大在庫(kù)量+最小在庫(kù)量數(shù)據(jù)項(xiàng)①貨物編號(hào)數(shù)據(jù)項(xiàng)別名:貨號(hào)說(shuō)明:倉(cāng)庫(kù)中的貨物的唯一標(biāo)識(shí)類(lèi)型:字符型長(zhǎng)度:16②入庫(kù)編號(hào)數(shù)據(jù)項(xiàng)別名:無(wú)說(shuō)明:貨物的入庫(kù)流水號(hào)類(lèi)型:字符型長(zhǎng)度:16③倉(cāng)庫(kù)編號(hào)數(shù)據(jù)項(xiàng)別名:無(wú)說(shuō)明:倉(cāng)庫(kù)的編號(hào)類(lèi)型:字符型長(zhǎng)度:16④盤(pán)點(diǎn)單編號(hào)數(shù)據(jù)項(xiàng)別名:無(wú)說(shuō)明:倉(cāng)庫(kù)盤(pán)點(diǎn)單的流水類(lèi)型:字符型長(zhǎng)度:163.4功能需求分析需求分析是通過(guò)對(duì)功能的描述,說(shuō)明項(xiàng)目系統(tǒng)或設(shè)計(jì)中要實(shí)現(xiàn)的各功能模塊。不論是系統(tǒng)或設(shè)計(jì)的介紹,功能描述都是不行缺少的。同事對(duì)要解決的問(wèn)題進(jìn)行分析,弄清楚問(wèn)題的要求,包括需要輸入什么數(shù)據(jù),得到什么結(jié)果,最終應(yīng)當(dāng)輸出什么。倉(cāng)庫(kù)貨物管理系統(tǒng)主要針對(duì)于日常庫(kù)存信息的管理,它針對(duì)倉(cāng)庫(kù)日常發(fā)生的業(yè)務(wù),主要模塊為貨物管理、出入庫(kù)管理、倉(cāng)庫(kù)管理,用戶通過(guò)相應(yīng)的模塊,對(duì)倉(cāng)庫(kù)里的物品的基本狀況進(jìn)行操作,對(duì)庫(kù)存數(shù)量進(jìn)行查詢(xún),用戶通過(guò)簡(jiǎn)潔的操作即可輕松的管理倉(cāng)庫(kù)。本次設(shè)計(jì)索要實(shí)現(xiàn)的功能主要分為出入庫(kù)管理、基本資料管理、倉(cāng)區(qū)管理、系統(tǒng)管理等功能模塊來(lái)實(shí)現(xiàn)倉(cāng)庫(kù)的綜合管理。本系統(tǒng)可以便利快捷地實(shí)現(xiàn)庫(kù)管理中的出庫(kù)入庫(kù)、庫(kù)存管理等操作,使企業(yè)的的倉(cāng)庫(kù)井井有條,更實(shí)時(shí)精確地管理倉(cāng)庫(kù)。出入庫(kù)管理中包含出庫(kù)管理、入庫(kù)管理、庫(kù)存管理、盤(pán)點(diǎn)管理。出庫(kù)管理:出庫(kù)管理是對(duì)系統(tǒng)中貨物的出庫(kù)管理,可以對(duì)倉(cāng)庫(kù)中的貨物出庫(kù)狀況進(jìn)行查看,并可以添加新的入庫(kù)信息。入庫(kù)管理:入庫(kù)管理是對(duì)系統(tǒng)中貨物的入庫(kù)管理,可以對(duì)倉(cāng)庫(kù)中的貨物入庫(kù)狀況進(jìn)行查看,并可以添加新的入庫(kù)信息。庫(kù)存管理:在庫(kù)管理是對(duì)系統(tǒng)中庫(kù)存信息的管理,可以對(duì)倉(cāng)庫(kù)中的庫(kù)存信息進(jìn)行查看,并可以添加新的庫(kù)存信息。盤(pán)點(diǎn)管理:盤(pán)點(diǎn)管理包含基本的盤(pán)點(diǎn)管理和盤(pán)點(diǎn)明細(xì)管理,可以對(duì)貨物盤(pán)點(diǎn)信息進(jìn)行查看和添加。倉(cāng)區(qū)管理中包含倉(cāng)庫(kù)管理、倉(cāng)區(qū)管理。倉(cāng)庫(kù)管理:倉(cāng)庫(kù)管理是對(duì)系統(tǒng)中倉(cāng)庫(kù)信息的管理,可以對(duì)倉(cāng)庫(kù)信息進(jìn)行查看,并可以添加新的倉(cāng)庫(kù)信息。倉(cāng)區(qū)管理:倉(cāng)區(qū)管理是對(duì)系統(tǒng)中倉(cāng)區(qū)信息的管理,可以對(duì)倉(cāng)庫(kù)中的倉(cāng)區(qū)信息進(jìn)行倉(cāng)庫(kù),并可以添加新的倉(cāng)區(qū)信息。依據(jù)對(duì)各大超市進(jìn)行的調(diào)查和分析,倉(cāng)庫(kù)管理系統(tǒng)應(yīng)當(dāng)具有以下功能:①倉(cāng)庫(kù)中的貨物信息的錄入、修改、刪除和查詢(xún)。②倉(cāng)庫(kù)的信息的的錄入、修改、刪除、查詢(xún)和統(tǒng)計(jì)。③管理者的信息的錄入、修改、刪除和查詢(xún)。④供貨商的信息的錄入、修改、刪除、查詢(xún)和統(tǒng)計(jì)。1)功能劃分倉(cāng)庫(kù)管理系統(tǒng)主要實(shí)現(xiàn)以下四方面的功能:a.登陸b.注冊(cè)c.查詢(xún)d.修改2)功能描述倉(cāng)庫(kù)管理包括登陸、注冊(cè)、查詢(xún)、修改四方面功能。登陸,分為一般管理員登陸和超級(jí)管理員登陸。查詢(xún),分為員工對(duì)系統(tǒng)功能分析中的各項(xiàng)功能進(jìn)行查詢(xún),倉(cāng)庫(kù)查詢(xún)和物品查詢(xún)。修改,主要實(shí)現(xiàn)添加,修改和刪除。4概要設(shè)計(jì)集中、分塊,依據(jù)結(jié)構(gòu)化程序設(shè)計(jì)的要求,得到如下圖所示的系統(tǒng)功能模塊圖。倉(cāng)庫(kù)管理系統(tǒng)倉(cāng)庫(kù)管理系統(tǒng)登錄注冊(cè)查詢(xún)修改管理員1管理員2員工查詢(xún)倉(cāng)庫(kù)查詢(xún)商品查詢(xún)添加修改刪除圖1功能模塊圖5規(guī)律設(shè)計(jì)依據(jù)數(shù)據(jù)庫(kù)需求分析,本系統(tǒng)的數(shù)據(jù)庫(kù)規(guī)律結(jié)構(gòu)設(shè)計(jì)如下。零件信息設(shè)計(jì)管理員信息設(shè)計(jì)倉(cāng)庫(kù)信息設(shè)計(jì)6界面設(shè)計(jì)6.1登陸界面6.2管理員界面6.2.1管理員信息界面6.2.2管理員信息錄入6.3倉(cāng)庫(kù)管理界面6.3.1倉(cāng)庫(kù)信息界面6.3.2倉(cāng)庫(kù)信息錄入6.4零件管理界面6.4.1零件信息界面6.4.2零件信息錄入7總結(jié)經(jīng)過(guò)兩周的課程設(shè)計(jì),倉(cāng)庫(kù)管理系統(tǒng)最終完成,在一次次的調(diào)試后,程序比較完善,并且利用數(shù)據(jù)庫(kù)的相關(guān)學(xué)問(wèn),存儲(chǔ)信息。我們做的倉(cāng)庫(kù)貨物管理系統(tǒng)可以完成完成以下功能:1)用戶的登錄2)管理員信息的錄入、查詢(xún)和刪除3)倉(cāng)庫(kù)信息的錄入和查詢(xún)4)零件信息的錄入和查詢(xún)?cè)诖舜握n程設(shè)計(jì)中,有時(shí)一個(gè)簡(jiǎn)潔的錯(cuò)誤,就要花很長(zhǎng)時(shí)間去找。程序?qū)懛ㄉ嫌泻芏嗖煌?有時(shí)候找到了錯(cuò)誤,但卻不知道如何去處理,因此在這個(gè)過(guò)程中,我充分利用了網(wǎng)絡(luò)上的資源,最終這些問(wèn)題都被一一解決了。JAVA語(yǔ)言、數(shù)據(jù)庫(kù)有了更深一步的了解。本程序的最大優(yōu)點(diǎn)是一個(gè)界面可以完成全部的信息操作,有完整的操作信息,操作簡(jiǎn)便,數(shù)據(jù)完整??傮w來(lái)說(shuō),我的作品不夠完善,例如無(wú)法將數(shù)據(jù)在退出程序后仍舊儲(chǔ)存在數(shù)據(jù)庫(kù)中,而且對(duì)數(shù)據(jù)的操作過(guò)于簡(jiǎn)潔,僅僅局限于添加,刪除,以及簡(jiǎn)潔修改。最重要的是對(duì)數(shù)據(jù)的操作存在平安隱患,程序的漏洞是操作者可以修改任何人的信息。所以作品完成至今,我們心中仍舊有更多的想法去實(shí)現(xiàn),我們將利用更多的時(shí)間與精力去不斷完善此程序。8參考文獻(xiàn)(1)數(shù)據(jù)庫(kù)原理及應(yīng)用教程——王預(yù)主編,清華高校出版社(2)Java程序設(shè)計(jì)基礎(chǔ)(第4版)——陳國(guó)君主編,清華高校出版社(3)崔勁松.基于VB的倉(cāng)庫(kù)數(shù)據(jù)庫(kù)管理系統(tǒng)[J].菏澤學(xué)院學(xué)報(bào),2013,S1:126-128.(4)馬麗.基于.NET的倉(cāng)庫(kù)管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].科教文匯(下旬刊),2009,10:281-282.(5)曾佑新.?dāng)?shù)據(jù)庫(kù)在倉(cāng)庫(kù)管理中的應(yīng)用[J].華東交通高校學(xué)報(bào),1996,S1:31-33+41.9附錄Clientimportjava.a(chǎn)wt.Container;importjavax.swing.Icon;importjavax.swing.ImageIcon;importjavax.swing.JFrame;importjavax.swing.JLabel;importjavax.swing.JPanel;publicclassClient{?publicstaticLoginlogn=newLogin();?publicstaticvoidmain(String[]args)?{??logn.setTitle("倉(cāng)庫(kù)管理系統(tǒng)");??logn.setDefaultCloseOperat(yī)ion(JFrame.EXIT_ON_CLOSE);??logn.setSize(280,250);??logn.setVisible(true);?}}guestimportjavax.swing.*;importjavax.swing.*;@SuppressWarnings({"unused","serial"})publicclassguestextendsJFrame{?publicstaticGepersonpanel3=newGeperson();?//publicstaticgroupinfpane4=newgroupinf();?publicstat(yī)icCangkupanel5=newCangku();?//publicstaticsportinfpane6=newsportinf();?publicstat(yī)icLingjianpane16=newLingjian();?//publicstat(yī)icsportinfpane1=newsportinf();publicstaticJPanelcontPane1=newJPanel();publicstat(yī)icJPanelcontPane2=newJPanel();publicstaticJPanelcontPane3=newJPanel();publicstat(yī)icJPanelcontPane4=newJPanel();publicstaticJPanelcontPane5=newJPanel();publicstat(yī)icJPanelcontPane6=newJPanel();privat(yī)eJTabbedPanetabp=newJTabbedPane();?publicguest(){??contPane2.add(panel3);??tabp.addTab("個(gè)人信息",null,contPane2);??contPane3.a(chǎn)dd(panel5);??tabp.addTab("倉(cāng)庫(kù)信息",null,contPane3);??contPane4.add(pane16);??tabp.a(chǎn)ddTab("零件信息",null,contPane4);??add(tabp);?}}manageimportjavax.swing.*;importjavax.swing.event.*;importjavax.swing.table.DefaultTableModel;importjava.a(chǎn)wt.*;nsole.*;importjavax.swing.table.*;importjava.awt.event.ActionEvent;importjava.awt.event.ActionListener;@SuppressWarnings({"unused","serial"})publicclassmanageextendsJFrame{??publicstat(yī)icGepersonpane3=newGeperson();?publicstaticGepersoninfpane4=newGepersoninf();?publicstaticCangkupane5=newCangku();?publicstaticCangkuinfpane6=newCangkuinf();?publicstat(yī)icLingjianpane11=newLingjian();?publicstaticLingjianinfpane12=newLingjianinf();publicstaticJPanelcontPanel1=newJPanel();publicstaticJPanelcontPanel2=newJPanel();publicstaticJPanelcontPanel3=newJPanel();publicstat(yī)icJPanelcontPanel4=newJPanel();publicstaticJPanelcontPanel5=newJPanel();publicstaticJPanelcontPanel6=newJPanel();privateJTabbedPanetabp=newJTabbedPane();?publicmanage(){??setTitle("倉(cāng)庫(kù)管理系統(tǒng)");??contPanel2.add(pane3);//pane3的對(duì)象是geperson類(lèi)??tabp.a(chǎn)ddTab("管理員信息",null,contPanel2);//??contPanel3.add(pane5);//pane5的對(duì)象是Cangku類(lèi)??tabp.addTab("倉(cāng)庫(kù)信息",null,contPanel3);??contPanel6.add(pane11);//pane11的對(duì)象是lingjian類(lèi)??tabp.a(chǎn)ddTab("零件信息",null,contPanel6);??add(tabp);?}}Loginimportjavax.swing.*;importstaticnet.mindview.until.SwingConsole.*;importjava.awt.event.ActionEvent;importjava.awt.event.ActionListener;publicclassLoginextendsJFrame{ privatestaticfinallongserialVersionUID=1L;?privateJLabelusr=newJLabel("用戶名:");?privateJTextFieldusrnm=newJTextField(10);?privat(yī)eJLabelpwd=newJLabel("密碼:");?privateJPasswordFieldpswd=newJPasswordField(10);?privateJButtonlogin=newJButton("登錄");?privateActionListenerb1=newActionListener(){??@SuppressWarnings("deprecation")??publicvoidactionPerformed(ActionEvente){?/*if(usrnm.getText().equals("guest")&&pswd.getText().equals("123"))?{??JOptionPane.showMessageDialog(null,"倉(cāng)庫(kù)管理系統(tǒng)","提示",JOptionPane.INFORMATION_MESSAGE);??run(newguest(),600,400,"倉(cāng)庫(kù)管理");??Client.logn.setVisible(false);?}*/?if(usrnm.getText().equals("gsj")&&pswd.getText().equals("123456")) {??JOptionPane.showMessageDialog(null,"倉(cāng)庫(kù)管理系統(tǒng)","提示",JOptionPane.INFORMATION_MESSAGE); ?run(newmanage(),750,620,"倉(cāng)庫(kù)管理系統(tǒng)");??Client.logn.setVisible(false);?}?else{??JOptionPane.showMessageDialog(null,"用戶名或密碼錯(cuò)誤","提示",JOptionPane.WARNING_M(jìn)ESSAGE);?}??}?}; publicLogin(){??setLayout(null);??usr.setBounds(40,20,60,20);??usrnm.setBounds(100,20,100,20);??pwd.setBounds(40,60,60,20);??pswd.setBounds(100,60,100,20);??login.setBounds(100,100,60,20);??login.addActionListener(b1);??add(usr);??add(usrnm);??add(pwd);??add(pswd);??add(login);?}}Cangkuimportjava.awt.Container;importjava.awt.Dimension;importjava.awt.FlowLayout;importjava.a(chǎn)wt.GridLayout;importjava.a(chǎn)wt.event.ActionEvent;importjava.awt.event.ActionListener;importjava.sql.ResultSet;importjavax.swing.ImageIcon;importjavax.swing.JButton;importjavax.swing.JComboBox;importjavax.swing.JLabel;importjavax.swing.JPanel;importjavax.swing.JScrollPane;importjavax.swing.JTable;importjavax.swing.JTextField;importjavax.swing.table.DefaultTableModel;@SuppressWarnings("serial")publicclassCangkuextendsJPanel{?privateJLabelshc=newJLabel("查詢(xún)倉(cāng)庫(kù)");?privateJButtonsch=newJButton("查詢(xún)"),???adds=newJButton("錄入");?privateJTextFieldcdtn=newJTextField(10);?privateString[]heads={???"倉(cāng)庫(kù)編號(hào)","倉(cāng)庫(kù)名稱(chēng)","所在地","管理員姓名","聯(lián)系電話"?}; privateString[]descripton={"全部?jī)?nèi)容","管理員姓名","倉(cāng)庫(kù)名稱(chēng)"};?privateJComboBoxschcdn=newJComboBox(descripton);?privateDefaultTableModelmodel=newDefaultTableModel(null,heads);?privat(yī)eJTabletable=newJTable(model);?JScrollPanescrollpane=newJScrollPane(table);??privateActionListenerb3=newActionListener(){???publicvoidactionPerformed(ActionEvente){????Stringquery=null;?? ?while(model.getRowCount()!=0)?????model.removeRow(0);????try{??? ?intcondition=schcdn.getSelectedIndex();?????if(condition==0)???query="SELECT*FROMcangku";?????if(condition==1)???query="SELECT*FROMcangkuWHEREid='"+cdtn.getText()+"'";?????if(condition==2)???query="SELECT*FROMcangkuWHEREuname='"+cdtn.getText()+"'";?????SqlFunctionsel=newSqlFunction();???ResultSetrelt=sel.ExecuteQuery(query);???while(relt.next())???{?model.a(chǎn)ddRow(newObject[]{relt.getString("id"),relt.getString("uname"),relt.getString("address"),relt.getString("pname"),relt.getString("phone")});????//model.addRow(newObject[]{relt.getString("1"),relt.getString("2"),relt.getString("3"),relt.getString("4")});???}???}catch(Exceptionf){?? ?f.printStackTrace();????}???}??};??privateActionListenerb2=newActionListener(){???publicvoidactionPerformed(ActionEvente){?? ?manage.contPanel3.add(manage.pane6);?? ?manage.contPanel3.add(manage.pane5);????manage.contPanel3.revalidate();????manage.contPanel3.repaint();???}??};?publicCangku(){??setPreferredSize(newDimension(550,450));??setLayout(newFlowLayout());??sch.addActionListener(b3);??adds.addActionListener(b2);?add(shc);??add(schcdn);??add(cdtn);??add(sch);??add(adds);??add(scrollpane);?}} @SuppressWarnings("serial")?classCangkuinfextendsJPanel{??//?"倉(cāng)庫(kù)編號(hào)","倉(cāng)庫(kù)名稱(chēng)","所在地","管理員姓名","聯(lián)系電話"??privat(yī)eJLabelspnum=newJLabel("倉(cāng)庫(kù)編號(hào)"),????spname=newJLabel("倉(cāng)庫(kù)名稱(chēng)"),????lhrcd=newJLabel("所在地"),?? ?lxren=newJLabel("管理員姓名"),????lxdian=newJLabel("聯(lián)系電話");? privateJTextFieldsnum=newJTextField(20),????sname=newJTextField(20),????lhrecord=newJTextField(20),????lxre=newJTextField(20), ???lxdia=newJTextField(20);??privat(yī)eJButtonsav=newJButton("提交"),????ext=newJButton("返回");??privateActionListenerb1=newActionListener(){???publicvoidactionPerformed(ActionEvente){????//athelete.setContentPane(athelete.pane1);?? ?manage.contPanel3.remove(manage.pane6);????manage.contPanel3.remove(manage.pane5);????manage.contPanel3.revalidate();????manage.contPanel3.repaint();? ?}??};??privat(yī)eActionListenerb3=newActionListener(){ ??publicvoidactionPerformed(ActionEvente){????Stringsanum=snum.getText();?? ?Stringsaname=sname.getText();? ??Stringsaage=lhrecord.getText();????Strings1=lxre.getText();????Strings2=lxdia.getText();????Stringinsert="INSERTINTOcangkuvalues('"+sanum+"','"+saname+"','"+saage+"','"+s1+"','"+s2+"')";? ??SqlFunctionsql=newSqlFunction();????sql.ExecuteUpdate(insert);????manage.contPanel3.remove(manage.pane6);????manage.contPanel3.revalidate();? ??manage.contPanel3.repaint();???}???};??publicCangkuinf(){???setLayout(newGridLayout(10,2));???sav.addActionListener(b3); ??//sav.addActionListener(b1);???ext.addActionListener(b1);???add(spnum);???add(snum);???add(spname);???add(sname);???add(lhrcd);???add(lhrecord);???add(lxren);???add(lxre);???add(lxdian);???add(lxdia);???add(sav);???add(ext);??}}Gepersonimportjava.awt.Dimension;importjava.a(chǎn)wt.FlowLayout;importjava.awt.GridLayout;importjava.awt.event.ActionEvent;importjava.a(chǎn)wt.event.ActionListener;importjava.sql.ResultSet;importjavax.swing.JButton;importjavax.swing.JComboBox;importjavax.swing.JLabel;importjavax.swing.JOptionPane;importjavax.swing.JPanel;importjavax.swing.JScrollPane;importjavax.swing.JTable;importjavax.swing.JTextField;importjavax.swing.table.DefaultTableModel;@SuppressWarnings("serial")publicclassGepersonextendsJPanel{?privateJLabelshc=newJLabel("查詢(xún)管理員");?privat(yī)eJButtonsch=newJButton("查詢(xún)"),???adds=newJButton("錄入"),?del=newJButton("刪除");?privateJTextFieldcdtn=newJTextField(10);?privat(yī)eString[]heads={? ?"姓名","性別","電話","電子郵件"?};?privateString[]descripton={"全部?jī)?nèi)容","姓名","性別","電話"};?privateJComboBoxschcdn=newJComboBox(descripton);privat(yī)eDefaultTableModelmodel=newDefaultTableModel(null,heads);?privateJTabletable=newJTable(model);?JScrollPanescrollpane=newJScrollPane(table);??privateActionListenerb3=newActionListener(){???publicvoidactionPerformed(ActionEvente){????Stringquery=null;????while(model.getRowCount()!=0)? ?? model.removeRow(0);?? ?try{?????intcondition=schcdn.getSelectedIndex();?????if(condition==0)??????query="SELECTname,sex,phone,emailFROMgeperson";?????if(condition==1)??????query="SELECTname,sex,phone,emailFROMgepersonWHEREuname='"+cdtn.getText()+"'";?????if(condition==2)??????query="SELECTname,sex,phone,emailFROMgepersonWHEREsex='"+cdtn.getText()+"'";?????if(condition==3)? ???query="SELECTname,sex,phone,emailFROMgepersonWHEREexperience='"+cdtn.getText()+"'";???SqlFunctionsel=newSqlFunction();???ResultSetrelt=sel.ExecuteQuery(query);? ?while(relt.next())???{????model.a(chǎn)ddRow(newObject[]{relt.getString("name"),relt.getString("sex"),relt.getString("phone"),relt.getString("email")});???}???}cat(yī)ch(Exceptionf){????f.printStackTrace();?? ?}???}??};??privateActionListenerb2=newActionListener(){???publicvoidactionPerformed(ActionEvente){????manage.contPanel2.remove(manage.pane3);????manage.contPanel2.add(manage.pane4);????manage.contPanel2.revalidate();????manage.contPanel2.repaint();???}??};??privateActionListenerb4=newActionListener(){???publicvoidactionPerformed(ActionEvente){????Stringquery=null;????try{???? intcondition=schcdn.getSelectedIndex();?????if(condition==0)??? ??JOptionPane.showMessageDialog(null,"請(qǐng)輸入刪除屬性","提示",JOptionPane.ERROR_M(jìn)ESSAGE);?????if(condition==1){ ??query="deleteFROMgepersonWHEREnamelike'%"+cdtn.getText()+"%'";????SqlFunctionsel=newSqlFunction();?????sel.Executedelete(query);?}?????if(condition==2){??????query="deleteFROMgepersonWHEREsexlike'%"+cdtn.getText()+"%'";??????SqlFunctionsel=newSqlFunction();?????sel.Executedelete(query);??? ??}?????if(condition==3){???query="deleteFROMgepersonWHEREphonelike'%"+cdtn.getText()+"%'";???SqlFunctionsel=newSqlFunction();?????sel.Executedelete(query);? ?}???}cat(yī)ch(Exceptionf){????f.printStackTrace();????}????if(model.getRowCount()==0)?? ??JOptionPane.showMessageDialog(null,"沒(méi)有相應(yīng)記錄","提示",JOptionPane.WARNING_MESSAGE);???}? };?publicGeperson(){? setPreferredSize(newDimension(750,400));? setLayout(newFlowLayout());??shc.setBounds(50,20,60,20);//左,上,右,下??schcdn.setBounds(110,20,90,20);??cdtn.setBounds(210,20,60,20);??sch.setBounds(290,20,60,20);??adds.setBounds(420,20,60,20);??del.setBounds(490,20,60,20);??scrollpane.setBounds(30,50,700,500);??del.addActionListener(b4);??sch.a(chǎn)ddActionListener(b3);??adds.addActionListener(b2);?add(shc);??add(schcdn);? add(cdtn);??add(sch);? add(adds);??add(del);??add(scrollpane);?}?}classGepersoninfextendsJPanel{?privatestaticfinallongserialVersionUID=1L; //"姓名","性別","電話","電子郵件"?privateJLabelgrpname=newJLabel("姓名"),???dist=newJLabel("性別"),??dianhua=newJLabel("電話"),??mail=newJLabel("電子郵件");?privateJTextFieldgname=newJTextField(20),???adist=newJTextField(20),???dianha=newJTextField(20),???mal=newJTextField(20);?privat(yī)eJButtonsav=newJButton("提交"),???ext=newJButton("返回");?privateActionListenerb3=newActionListener(){??publicvoidactionPerformed(ActionEvente){? ?Stringsaname=gname.getText(); ??Stringsbegnum=adist.getText();???Stringsdianhua=dianha.getText();???Stringsmail=mal.getText();???if(saname.equals("")||saname.equals(""))???{????JOptionPane.showMessageDialog(null,"姓名不能為空不能為空","提示",JOptionPane.ERROR_MESSAGE);????return;???}???Stringinsert="INSERTINTOgepersonvalues('"+saname+"','"+sbegnum+"','"+sdianhua+"','"+smail+"')";???SqlFunctionsql=newSqlFunction(); ??sql.ExecuteUpdate(insert);???gname.setText(null);? ?adist.setText(null);???dianha.setText(null);???mal.setText(null);?? manage.contPanel2.remove(manage.pane3);???manage.contPanel2.add(manage.pane4);???manage.contPanel2.revalidate();? ?manage.contPanel2.repaint();???}??};??privateActionListenerb1=newActionListener(){??publicvoidactionPerformed(ActionEvente){?? //athelete.setContentPane(athelete.pane1); ??manage.contPanel2.remove(manage.pane4);???manage.contPanel2.add(manage.pane3);???manage.contPanel2.revalidate();???manage.contPanel2.repaint();??}?};?publicGepersoninf(){??setLayout(newGridLayout(10,2));? sav.addActionListener(b3); ?ext.a(chǎn)ddActionListener(b1);? add(grpname);??add(gname);??add(dist);??add(adist);??add(dianhua);??add(dianha);??add(mail);??add(mal);??add(sav);??add(ext);?}}Lingjianimportjava.awt.Dimension;importjava.awt.FlowLayout;importjava.awt.GridLayout;importjava.awt.event.ActionEvent;importjava.awt.event.ActionListener;importjava.sql.ResultSet;importjavax.swing.JButton;importjavax.swing.JComboBox;importjavax.swing.JLabel;importjavax.swing.JPanel;importjavax.swing.JScrollPane;importjavax.swing.JTable;importjavax.swing.JTextField;importjavax.swing.table.DefaultTableModel;@SuppressWarnings("serial")publicclassLingjianextendsJPanel{?privateJLabelshc=newJLabel("查詢(xún)零件");?privat(yī)eJButtonsch=newJButton("查詢(xún)"), ?adds=newJButton("錄入");?privateJTextFieldcdtn=newJTextField(10);?privat(yī)eString[]heads={???"零件編號(hào)","零件名稱(chēng)","零件價(jià)格","庫(kù)存數(shù)量"?};?privat(yī)eString[]descripton={"全部?jī)?nèi)容","零件編號(hào)","零件名稱(chēng)"};?privateJComboBoxschcdn=newJComboBox(descripton);?privat(yī)eDefaultTableModelmodel=newDefaultTableModel(null,heads);?privateJTabletable=newJTable(model);?JScrollPanescrollpane=newJScrollPane(table);??privateActionListenerb3=newActionListener(){???publicvoidactionPerformed(ActionEvente){? ??Stringquery=null;????while(model.getRowCount()!=0)?????model.removeRow(0);????try{?????intcondition=schcdn.getSelectedIndex();?????if(condition==0)? ?query="SELECT*FROMlingjian";?????if(condition==1) ??query="SELECT*FROMlingjainWHEREid='"+cdtn.getText()+"'";?????if(condition==2)???query="SELECT*FROMlingjianWHEREuname='"+cdtn.getText()+"'";?? ?SqlFunctionsel=newSqlFunction();???ResultSetrelt=sel.ExecuteQuery(query);???while(relt.next())???{?model.addRow(newObject[]{relt.getString("id"),relt.getString("uname"),relt.getString("price"),relt.getString("amount")});????//model.addRow(newObject[]{relt.getString("1"),relt.getString("2"),relt.getString("3"),relt.getString("4")});???}????}catch(Exceptionf){????f.printStackTrace();????}???}??};??privateActionListenerb2=newActionListener(){? ?publicvoidactionPerformed(ActionEvente){????manage.contPanel6.add(manage.pane12);????manage.contPanel6.add(manage.pane11);????manage.contPanel6.revalidat(yī)e();? ??manage.contPanel6.repaint();???}??};?publicLingjian(){??setPreferredSize(newDimension(550,450));??setLayout(newFlowLayout());??sch.addActionListener(b3);??adds.addActionListener(b2);?add(shc);??add(schcdn);??add(cdtn);??add(sch);??add(adds);? add(scrollpane);?}}?@SuppressWarnings("serial")?classLingjianinfextendsJPanel{??// "零件編號(hào)","零件名稱(chēng)","零件價(jià)格","庫(kù)存數(shù)量"??privateJLabelspnum=newJLabel("零件編號(hào)"),????spname=newJLabel("零件名稱(chēng)"),????lxren=newJLabel("零件價(jià)格"),????lxdian=newJLabel("庫(kù)存數(shù)量"); ?privateJTextFieldsnum=newJTextField(20),????sname=newJTextField(20),????lxre=newJTextField(20),????lxdia=newJTextField(20);??privateJButtonsav=newJButton("提交"),????ext=newJButton("返回");??privateActionListenerb1=newActionListener(){???publicvoidactionPerformed(ActionEvente){????//athelete.setContentPane(athelete.pane1);????manage.contPanel6.remove(manage.pane12);? ??manage.contPanel6.remove(manage.pane11);????manage.contPanel6.revalidat(yī)e();????manage.contPanel6.repaint();???}??};??privateActionListenerb3=newActionListener(){???publicvoidactionPerformed(ActionEvente){? ??Stringsanum=snum.getText();????Stringsaname=sname.getText();????Strings1=lxre.getText();????Strings2=lxdia.getText();????Stringinsert="INSERTINTOlingjianvalues('"+sanum+"','"+saname+"','"+s1+"','"+s2+"')";????SqlFunctionsql=newSqlFunction();??? sql.ExecuteUpdate(insert);????manage.contPanel6.remove(manage.pane12);????manage.contPanel6.revalidat(yī)e();????manage.contPanel6.repaint();?? }???};??publicLingjianinf(){???setLayout(newGridLayout(10,2));???sav.addActionListener(b3);???//sav.addActionListener(b1);???ext.addActionListener(b1);???add(spnum);???add(snum);???add(spname);???add(sname);???add(lxren);???add(lxre);???add(lxdian);???add(lxdia); ??add(sav);???add(ext);??}}SqlFunctionimportjavax.swing.*;importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.ResultSet;importjava.sql.SQLException;importjava.sql.Statement;publicclassSqlFunction{?privateStringdriver="com.microsoft.sqlserver.jdbc.SQLServerDriver";?privat(yī)eStringurl="jdbc:sqlserver://localhost:1433;dat(yī)abaseName=cangku";?privateStringuser="sa";?privateStringpassword
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中職(建筑防水工程技術(shù))防水卷材施工階段測(cè)試試題及答案
- 2025年大學(xué)心理健康(人際交往)試題及答案
- 2025年中職圖書(shū)館學(xué)(圖書(shū)館學(xué)基礎(chǔ))試題及答案
- 2025年高職物業(yè)管理(物業(yè)綠化養(yǎng)護(hù))試題及答案
- 2025年高職電子信息材料應(yīng)用技術(shù)(材料性能檢測(cè))試題及答案
- 2025年中職農(nóng)業(yè)機(jī)械使用與維護(hù)(農(nóng)機(jī)操作規(guī)范)試題及答案
- 2025年高職化學(xué)(有機(jī)化學(xué))試題及答案
- 2025年中職美術(shù)概論(美術(shù)創(chuàng)作理論)試題及答案
- 2025 小學(xué)四年級(jí)思想品德下冊(cè)公共場(chǎng)合禮儀訓(xùn)練考核課件
- 養(yǎng)老院老人康復(fù)設(shè)施維修人員培訓(xùn)制度
- 鉆井公司冬季安全培訓(xùn)內(nèi)容課件
- 瓶裝礦泉水代工協(xié)議書(shū)
- 2026年浙江高考數(shù)學(xué)考試卷含答案
- 炎德·英才·名校聯(lián)考聯(lián)合體2026屆高三年級(jí)1月聯(lián)考生物試卷(含答及解析)
- 2025年7月新疆普通高中學(xué)業(yè)水平考試化學(xué)試卷(含答案及解析)
- 2025中國(guó)遠(yuǎn)洋海運(yùn)集團(tuán)內(nèi)部招聘中遠(yuǎn)海運(yùn)能源運(yùn)輸股份有限公司招聘筆試參考題庫(kù)附帶答案詳解(3卷)
- 硅素行業(yè)分析報(bào)告
- 江蘇省2025年普通高中學(xué)業(yè)水平合格性考試物理試卷(含答案詳解)
- 2025內(nèi)蒙古鄂爾多斯市委政法委所屬事業(yè)單位引進(jìn)高層次人才3人模擬筆試試題及答案解析
- 跆拳道訓(xùn)練服裝要求規(guī)范
- 《物流安全培訓(xùn)》課件
評(píng)論
0/150
提交評(píng)論