企業(yè)進(jìn)銷存系統(tǒng)-畢業(yè)論文.doc
《企業(yè)進(jìn)銷存系統(tǒng)-畢業(yè)論文.doc》由會員分享,可在線閱讀,更多相關(guān)《企業(yè)進(jìn)銷存系統(tǒng)-畢業(yè)論文.doc(48頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、畢業(yè)設(shè)計(論文)設(shè)計(論文)題目: 企業(yè)進(jìn)銷存系統(tǒng) 畢業(yè)論文摘 要隨著科學(xué)技術(shù)的快速發(fā)展,生活中的每個角落都離不開信息技術(shù),信息技術(shù)的不斷進(jìn)步,互聯(lián)網(wǎng)的影響不斷深刻,帶來了結(jié)果就是網(wǎng)絡(luò)信息的急劇增長。而社會上的各行各業(yè)也無法脫離于這股時代大潮流,通過應(yīng)用最新的信息技術(shù),實現(xiàn)自己行業(yè)內(nèi)部的信息化,進(jìn)而簡化和規(guī)范自己行業(yè)內(nèi)部的業(yè)務(wù)行為和規(guī)則,是每個企業(yè)都要面對的問題。通過企業(yè)進(jìn)銷存平臺,各種中小型零售商可以在線管理自己的買賣行為,給經(jīng)營者帶來了很大的便利。進(jìn)銷存系統(tǒng)的核心在于其對自己倉庫數(shù)量的管理,以及貨物入庫和貨物出庫時倉庫與購物車之間數(shù)據(jù)的協(xié)同對應(yīng)。企業(yè)進(jìn)銷存系統(tǒng)在前臺頁面上選取JSP作為開發(fā)
2、語言,數(shù)據(jù)庫選用了MySQL數(shù)據(jù)庫,開發(fā)IDE采用MyEclipse 10,運(yùn)行服務(wù)器采用tomcat 6.0。企業(yè)進(jìn)銷存系統(tǒng)是一個基于B/S的功能強(qiáng)大的進(jìn)銷存系統(tǒng)。關(guān)鍵詞:進(jìn)銷存,JSP,MySQL,MyEclipse ABSTRACTWith the rapid development of science and technology and life are inseparable from every corner of the continuous advances in information technology, information technology, the Int
3、ernet continues to profoundly influence brought the result is a sharp increase in network information. And all walks of life in the community also can not escape the trend of the times in which shares, through the application of the latest information technology to achieve their information technolo
4、gy within the industry, and thus simplify and standardize their business practices within the industry and the rules of every enterprise To confront the problem.Invoicing by business platform, a variety of small online retailers manage their trading behavior, to the operators has brought great conve
5、nience. Invoicing system synergy between core warehouse and shopping cart data corresponding to its own warehouse when the number of management and storage of goods and cargo out of the library.Enterprise Invoicing system selected on the front page JSP as a development language, database selected My
6、SQL database development IDE using MyEclipse 10, run the server using tomcat 6.0. Invoicing System is an enterprise based on functional B / S powerful invoicing system.Keywords: Invoicing,JSP,MySQL,MyEclipse目 錄摘 要IABSTRACTII第一章 緒論11.1課題背景11.2目的和意義11.3開發(fā)工具及技術(shù)11.3.1開發(fā)工具11.3.2 JSP技術(shù)21.3.3 JavaScript31.
7、4軟硬件需求3第二章 系統(tǒng)分析42.1可行性分析42.1.1技術(shù)可行性52.1.2經(jīng)濟(jì)可行性52.1.3運(yùn)行可行性52.1.4法律可行性52.1.5事件可行性52.2功能模塊分析52.3設(shè)計的基本思想82.4性能需求92.4.1系統(tǒng)的安全性92.4.2數(shù)據(jù)的完整性92.5界面需求9第三章 數(shù)據(jù)庫設(shè)計103.1數(shù)據(jù)庫的分析與設(shè)計103.1.1數(shù)據(jù)庫的概念結(jié)構(gòu)設(shè)計103.1.2數(shù)據(jù)庫的邏輯結(jié)構(gòu)設(shè)計113.1.3數(shù)據(jù)庫的連接原理13第四章 系統(tǒng)功能實現(xiàn)144.1后臺登陸頁面144.2基礎(chǔ)模塊164.2.1商品管理174.2.2供應(yīng)商管理194.2.3顧客管理224.3庫存模塊234.3.1主要實現(xiàn)2
8、54.4出庫模塊274.1主要實現(xiàn)29第五章 系統(tǒng)測試315.1系統(tǒng)測試目的與意義315.2測試過程315.2.1主頁面的登錄模塊測試315.3其他錯誤32結(jié) 論33參考文獻(xiàn)34致 謝35III畢業(yè)論文第一章 緒論1.1課題背景互聯(lián)網(wǎng)的飛速發(fā)展不斷影響著社會上各行各業(yè)的經(jīng)營情況,從上個世紀(jì)起,隨著互聯(lián)網(wǎng)在中國的普及,我國的許多零售商開始嘗試通過信息系統(tǒng)來管理他們的日常業(yè)務(wù)。但由于存在各種因素,例如企業(yè)的業(yè)務(wù)各不相同、信息化的法律規(guī)定也不夠明確、各種物流系統(tǒng)不夠完善,這些因素交織在一起,嚴(yán)重阻礙著信息化走進(jìn)零售企業(yè)。本世紀(jì)以來,中國的基礎(chǔ)設(shè)施有了長足的進(jìn)步,之前阻礙信息化的因素也一個一個的被解決
9、,企業(yè)進(jìn)銷存系統(tǒng)終于在中小型零售商中蔓延開來。 1.2目的和意義倉儲信息化管理與傳統(tǒng)管理方式比較有很多的優(yōu)點(diǎn)如:1查詢比較方便倉儲信息化提供了非常多的查詢途徑,可以通過品種、日期等途徑進(jìn)行查詢,快速又準(zhǔn)確。2信息量大與過去的管理方式比較,倉儲信息化管理能夠提供大量商品信息。3成本比較低,風(fēng)險小,不受地點(diǎn)的限制信倉儲息化管理最突出的優(yōu)勢是,存儲的數(shù)據(jù)具有可靠性,與常見的報表相比,計算及存儲具有更高的可靠性,這使得經(jīng)營者可以更方便的查看當(dāng)前的庫存和出入庫信息。 1.3開發(fā)工具及技術(shù)1.3.1開發(fā)工具系統(tǒng)所采用的開發(fā)工具大部分為開源工具,具有較高的穩(wěn)定性,同時這些工具都有大量的介紹文獻(xiàn)和使用指導(dǎo),是
10、的用戶可以更方便的使用它們進(jìn)行系統(tǒng)的開發(fā)。1.3.1.1 MyEclipseMyEclipse,通常用來設(shè)計Java, J2EE的Eclipse插件集合,利用它可以完成對數(shù)據(jù)庫和J2EE的開發(fā)。通過對應(yīng)用程序服務(wù)器進(jìn)行整合,可以大大的增強(qiáng)運(yùn)算速度。MyEclipse的功能十分強(qiáng)大,幾乎涵蓋了各種設(shè)計功能。1.3.1.2 Tomcat Tomcat是一種是一個免費(fèi)的開放源代碼的Web 應(yīng)用服務(wù)器。在訪問客戶比較少的情況下被經(jīng)常采納,在設(shè)計JSP 程序時成為最好的選擇。換句話說,將Tomcat服務(wù)器安裝到一臺電腦上時,可通過它對HTML頁面的訪問請求進(jìn)行配合。事實上,Tomcat可以看成Apach
11、e 服務(wù)器基礎(chǔ)上的延伸,但它工作時相對比較獨(dú)立,因此當(dāng)tomcat工作時,事實上它是看成一個與Apache 服務(wù)器相對獨(dú)立的進(jìn)程運(yùn)行的。1.3.1.3 MySQL MySQL采用C和C+進(jìn)行設(shè)計,并同時采納了不同的編譯器來檢驗,確定源代碼的可移植性;支持AIX、FreeBSD、HP-UX、Linux、Mac OS、NovellNetware、OpenBSD、OS/2 Wrap、Solaris、Windows等多種操作系統(tǒng);為多種編程語言提供了API;支持多線程,充分對CPU資源加以利用;提供TCP/IP、ODBC和JDBC等很多數(shù)據(jù)庫連接途徑;能夠?qū)碛泻芏鄺l記錄的大型數(shù)據(jù)庫進(jìn)行運(yùn)算。通常來說
12、,MySQL所設(shè)計的功能足以滿足一般的個人客戶和中小型企業(yè),而且因為MySQL是開放源碼軟件,所以能夠在很大程度上減少整體的費(fèi)用。1.3.2 JSPJSP程序使用了Java編程語言,JSP技術(shù)可以對動態(tài)網(wǎng)頁進(jìn)行封裝。通過tags和scriptlets,網(wǎng)頁還能訪問存在于服務(wù)端的資源的應(yīng)用邏輯。JSP可以分離網(wǎng)頁邏輯與網(wǎng)頁設(shè)計和顯示,對可重用的基于組件的開發(fā)進(jìn)行支撐,更容易的對基于Web的應(yīng)用程序進(jìn)行設(shè)計。當(dāng)Web服務(wù)器接收到訪問JSP網(wǎng)頁的請求時,首先運(yùn)行的程序段,接下來將JSP文件中的HTML代碼和運(yùn)行效果一并返還給用戶。通過Java文件的插入能夠?qū)?shù)據(jù)庫、網(wǎng)頁多重定向等運(yùn)行,從而滿足構(gòu)建動
13、態(tài)網(wǎng)頁所需要的程序。JSP和Servle相同,都可以通過服務(wù)器端運(yùn)行。由于能夠?qū)⒁粋€HTML文本返回給用戶端,所以用戶端具備瀏覽器就可以進(jìn)行瀏覽。HTML程序和穿插在內(nèi)部的Java程序可以構(gòu)建JSP網(wǎng)頁。在服務(wù)器被用戶端訪問時,能夠處理相應(yīng)的Java代碼,然后將產(chǎn)生的HTML頁面再返回給用戶端的瀏覽器。JSP的設(shè)計關(guān)鍵是Servlet,通常大型的Web應(yīng)用程序的設(shè)計成果也通過Java Servlet和JSP的協(xié)作。JSP既擁有了方便快捷的Java程序,又統(tǒng)統(tǒng)的面向用戶,既實現(xiàn)了平臺的無關(guān)性危險還比較小,可以具備互聯(lián)網(wǎng)的全部優(yōu)勢。JSP技術(shù)的優(yōu)點(diǎn):(1)一次編寫,到處運(yùn)行。除了系統(tǒng)之外,代碼無需
14、做任何改動。 (2)系統(tǒng)的多平臺支持。通常情況下,能夠在任何情況下的全部平臺上進(jìn)行設(shè)計,能夠安排在任何情況中,也能夠在任何情況下進(jìn)行發(fā)展。相比ASP/.net來說,優(yōu)點(diǎn)是顯而易見的。(3)強(qiáng)大的可塑性。通過一個不大的Jar程序能夠?qū)ervlet/JSP進(jìn)行運(yùn)行,也能夠通過很多服務(wù)器進(jìn)行集群和負(fù)載平衡,甚至能夠通過多臺Application解決問題。單臺服務(wù)器到多臺服務(wù)器,Java展現(xiàn)了一個強(qiáng)大的功能。 (4)具有強(qiáng)大和多樣化的開發(fā)工具支持。Java已經(jīng)有了很多的設(shè)計方法,何況大部分工具都是沒有花費(fèi)的,這中間有很多都在多種平臺之下順暢的進(jìn)展。 (5)支持服務(wù)器端組件。只有很有力的服務(wù)器端組件才
15、能支撐web運(yùn)行,因此開發(fā)者可以在調(diào)用web頁面時通過另外的開發(fā)工具來達(dá)成紛亂效用的組件,來加強(qiáng)系統(tǒng)的可操作性。JSP可以通過完善的JAVA BEANS 組件來達(dá)成紛亂的商務(wù)功能。內(nèi)部對象表現(xiàn)出:request 用戶端請求,此請求會涵蓋來自GET/POST請求的參數(shù); response網(wǎng)頁傳回用戶端的反應(yīng);管理pageContext 網(wǎng)頁的屬性;session 與請求相關(guān)的會話;application servlet正在進(jìn)行的內(nèi)容;out 用來輸送響應(yīng)的輸出流; config代碼片段配置對象;pageJSP網(wǎng)頁本身。1.3.3 JavaScriptJavaScript是一種根據(jù)對象和情況驅(qū)使而
16、且相對危險性比較低的用戶端腳本語言。還可以大范圍的用于用戶端Web設(shè)計的腳本語言,一般可以用做增加HTML網(wǎng)頁動態(tài)功能,例如反饋用戶的所有操控。JavaScript的一個關(guān)鍵作用是向?qū)ο蟮墓δ?,根?jù)以對象為基礎(chǔ)的程序開發(fā),能夠用更直接、系統(tǒng)化和能夠反復(fù)利用的方法設(shè)計程序。根據(jù)HTML程序,可以采用Javascript對交互式Web網(wǎng)頁進(jìn)行設(shè)計。Javascript的應(yīng)用能夠達(dá)成網(wǎng)頁和客戶之間及時、動態(tài)、交互性的關(guān)系。這樣網(wǎng)頁可以呈現(xiàn)非常豐富的信息和非常好看的內(nèi)容。在本系統(tǒng)中不少設(shè)計都采用了javascript技術(shù),例如校驗用戶輸入數(shù)據(jù)的有效性等。1.4計算機(jī)需求硬件需求:CPU:酷睿i3內(nèi)存:
17、 1GB以上主頻:2GBHZ以上硬盤:300GB以上軟件需求:系統(tǒng)版本: Win7 Win8IDE:MyEclipse 10系統(tǒng)服務(wù)器: Tomcat 6.0數(shù)據(jù)庫版本:MySQL 5.0Java版本:Java 1.6瀏覽器版本:Google Chrome第二章 系統(tǒng)分析2.1可行性分析所謂的可行性分析是指通過調(diào)查客觀現(xiàn)實,再應(yīng)用的科學(xué)的手段,預(yù)測自己的開發(fā)計劃是否具有現(xiàn)實意義。2.1.1技術(shù)可行性系統(tǒng)的開發(fā)由本人擔(dān)任,在開發(fā)工具上,選用Myeclipse,數(shù)據(jù)庫采用mysql,開發(fā)語言選擇java,模式采用MVC模式,所有的技術(shù)都是本人大學(xué)期間所學(xué),且這些技術(shù)都經(jīng)歷了時間的考驗,被證明是可靠
18、地技術(shù),技術(shù)上同樣具有可行性。2.1.2經(jīng)濟(jì)可行性本系統(tǒng)的運(yùn)行對機(jī)器本身的硬件要求并不高,也不需要管理人員具有太多的專業(yè)知識,同時開發(fā)人員由本人擔(dān)任,所以也無需考慮系統(tǒng)開發(fā)的人力資源成本,所以本系統(tǒng)的開發(fā)在經(jīng)濟(jì)上是可行的。2.1.3運(yùn)行可行性本系統(tǒng)在開發(fā)完成后,所有的模塊都進(jìn)行了相應(yīng)的功能檢測和穩(wěn)定性檢測,運(yùn)行可行性得到了保證。2.1.4法律可行性本系統(tǒng)擁有自主的只是產(chǎn)權(quán),沒有使用任何違法的軟件也沒有交易任何非法的成品,所以在法律可行性上也沒有需呀擔(dān)心的地方。2.1.5時間可行性本人的畢業(yè)設(shè)計有充足的時間進(jìn)行開發(fā),且前期經(jīng)歷了周密的設(shè)計,因此不存在時間可行性上的問題。綜上所述,開發(fā)一個網(wǎng)上網(wǎng)上
19、男裝銷售系統(tǒng)是必要可行的。2.2功能模塊分析 按照最初的開題報告設(shè)想,系統(tǒng)主要分為一下幾個大的功能模塊。 (1)客戶管理模塊 客戶管理模塊用于管理進(jìn)銷存系統(tǒng)的客戶,功能包括添加客戶,修改客戶,刪除客戶??蛻艄芾砟K的用例圖如圖3-1所示:圖3-1客戶管理模塊用例圖(2)供應(yīng)商管理模塊 供應(yīng)商管理模塊用于管理進(jìn)銷存系統(tǒng)的供應(yīng)商,功能包括添加供應(yīng)商,修改供應(yīng)商,刪除供應(yīng)商。供應(yīng)商管理模塊的用例圖如圖3-2所示:圖3-2供應(yīng)商管理模塊用例圖(3)產(chǎn)品管理模塊 產(chǎn)品管理模塊用于管理進(jìn)銷存系統(tǒng)的產(chǎn)品,功能包括添加產(chǎn)品,修改產(chǎn)品,刪除產(chǎn)品。產(chǎn)品管理模塊的用例圖如圖3-3所示:圖3-3產(chǎn)品管理模塊用例圖 (
20、4)庫存管理功能庫存管理模塊用于管理進(jìn)銷存系統(tǒng)的庫存,功能包括產(chǎn)品入庫,入庫查詢,庫存查詢。庫存管理模塊的用例圖如圖3-4所示:圖3-4庫存管理模塊用例圖 (5)出庫管理功能出庫管理模塊用于管理進(jìn)銷存系統(tǒng)的出庫,功能包括銷售出庫,出庫查詢,銷售退貨。出庫管理模塊的用例圖如圖3-5所示:圖圖3-5出庫管理模塊用例圖 進(jìn)銷存管理人員功能模塊圖2.3系統(tǒng)設(shè)計的基本構(gòu)想系統(tǒng)設(shè)計的基本構(gòu)想可以概括為以下幾點(diǎn):1保障開發(fā)速度。由于開發(fā)時間有限,所以整個開發(fā)過程首要的就是保證開發(fā)的進(jìn)度能夠滿足設(shè)計時的設(shè)想,這樣才能在計劃的時間內(nèi)完成項目2. 系統(tǒng)模塊化。在開發(fā)項目之前就應(yīng)當(dāng)把系統(tǒng)分成較小的模塊,這樣不僅利于
21、掌握開發(fā)的進(jìn)度也方便開發(fā)之后的調(diào)試。3. 界面簡潔。簡潔漂亮友好的界面,可以使系統(tǒng)的用戶獲得更好的用戶體驗。4系統(tǒng)設(shè)計應(yīng)當(dāng)周全。系統(tǒng)在設(shè)計時應(yīng)當(dāng)盡量使自己的邏輯更加合理,同時為了以后的需求變動,系統(tǒng)應(yīng)有較好的擴(kuò)充能力。5. 運(yùn)用B/S模式。B/S模式尤其先天的優(yōu)越性,用戶不需要額外下載特定的客戶端,這使得用戶的使用更為方便。6. 先進(jìn)的設(shè)計理念。設(shè)計過程中應(yīng)當(dāng)應(yīng)用目前最流行的設(shè)計理念,比如MVC模式,數(shù)據(jù)庫連接池等。2.4性能需求2.4.1系統(tǒng)的安全性超市的進(jìn)銷存系統(tǒng),在保證功能可用的前提下,也要實現(xiàn)系統(tǒng)的安全性。1.用戶在使用進(jìn)銷存系統(tǒng)之前,首先要輸入自己的用戶名和密碼,只有通過系統(tǒng)校驗的用
22、戶才有權(quán)限,審核不通過的用戶無法登錄系統(tǒng),進(jìn)而也無法使用系統(tǒng)的任何資源,這種先驗證后使用的模式保證了系統(tǒng)的準(zhǔn)確性及可靠性。2.在具體應(yīng)用過程中對不同的權(quán)限進(jìn)行限定,權(quán)限不同的用戶在審核通過登陸后,無法進(jìn)行無權(quán)限操作,只有系統(tǒng)管理員能夠操作全部功能;普通的用戶根據(jù)自己的角色不同,只能實現(xiàn)和應(yīng)用系統(tǒng)的部分功能。2.4.2數(shù)據(jù)的完整性1.為了保證數(shù)據(jù)的可靠,允許少量數(shù)據(jù)冗余,關(guān)鍵的字段不允許為空2.不同表中的數(shù)據(jù)要做到一致性3.不允許非法輸入2.5界面需求隨著開發(fā)技術(shù)的不斷進(jìn)步,程序的前臺設(shè)計已經(jīng)成為用戶對軟件質(zhì)量進(jìn)行評價的一條關(guān)鍵指標(biāo),一個友好的前臺可以使用戶使用系統(tǒng)的信心和興趣高昂,使得系統(tǒng)的使
23、用率得到提高,JSP應(yīng)用java語言作為其腳本語言,JSP頁面給位于服務(wù)器的庫單元提供一個訪問接口用來實現(xiàn)基于HTTP的訪問。JSP創(chuàng)建動態(tài)頁面十分容易。前臺界面是指后臺系統(tǒng)與系統(tǒng)用戶交流的窗口,前臺界面的作用包括信息的輸入輸出和人機(jī)對話的界面格式。1.輸出設(shè)計所謂系統(tǒng)的輸出是指由計算機(jī)對用戶輸入的信息進(jìn)行解決,進(jìn)一步生成有用的信息,同時這種信息符合一定的規(guī)則,這份數(shù)據(jù)由管理者使用,這是設(shè)計輸出模式的主要目的。系統(tǒng)開發(fā)的過程與實施過程相反,并不是從輸入設(shè)計到輸出設(shè)計,而是從輸出設(shè)計到輸入設(shè)計。這是由于輸出表格與使用者直接相聯(lián)系,設(shè)計的目的應(yīng)當(dāng)是確保使用者可以很方便的使用輸出表格,并且可以將各部
24、門的有用信息及時的反映出來。輸出設(shè)計的準(zhǔn)繩是既要整體琢磨不同管理層的所有需要,又要簡潔,不要提供給用戶不需要的信息。2.輸入設(shè)計輸入數(shù)據(jù)的收集和錄入是比較麻煩的,需要非常多的人力和一定設(shè)備,而且經(jīng)常出錯。一旦輸入系統(tǒng)的數(shù)據(jù)不正確,那么處理后的輸出將擴(kuò)大這些錯誤,因此輸入數(shù)據(jù)的準(zhǔn)確性對于整個系統(tǒng)質(zhì)量的好壞是具有決定性意義的。輸入設(shè)計有以下幾點(diǎn)原則:1)輸入量應(yīng)盡量保持在能滿足處理要求的最低限度。開發(fā)時可使用設(shè)置字段初值,下拉式數(shù)據(jù)窗口等方式盡量使用戶鍵盤輸入量減少。隨著輸入量的減少,系統(tǒng)的錯誤率也隨之減少,最終達(dá)到減少數(shù)據(jù)的準(zhǔn)備時間的目的。2)應(yīng)盡可能使輸入的準(zhǔn)備及輸入的過程進(jìn)行時比較方便,這樣
25、使錯誤的發(fā)生率降低。3)應(yīng)盡量早檢查輸入數(shù)據(jù)(盡量接近原數(shù)據(jù)發(fā)生點(diǎn)),以便使錯誤更正比較及時。4)輸入數(shù)據(jù)盡早地記錄成其處理所需的形式,以防止數(shù)據(jù)由一種介質(zhì)轉(zhuǎn)移到另一種介質(zhì)時需要轉(zhuǎn)錄而可能發(fā)生的錯誤。第三章 數(shù)據(jù)庫設(shè)計3.1數(shù)據(jù)庫的分析與設(shè)計數(shù)據(jù)庫是計算機(jī)信息系統(tǒng)的基礎(chǔ)。信息的收集、更新、加工、統(tǒng)計、整理、存儲、檢索和傳播等操作只有得到后臺數(shù)據(jù)庫的支撐才可以實現(xiàn)。目前,電腦系統(tǒng)的關(guān)鍵與核心部分就是數(shù)據(jù)庫。數(shù)據(jù)庫開發(fā)的優(yōu)劣對整個系統(tǒng)的質(zhì)量和速度有著直接影響。數(shù)據(jù)庫的設(shè)計一般要可以分為個步驟:分別是分析需求、設(shè)計概念、設(shè)計邏輯、設(shè)計物理。3.1.1數(shù)據(jù)庫的概念結(jié)構(gòu)設(shè)計設(shè)計概念就是在數(shù)據(jù)分析的基礎(chǔ)上
26、自下而上的對整個系統(tǒng)的數(shù)據(jù)庫概念結(jié)構(gòu)進(jìn)行設(shè)計。從使用者的角度對視圖進(jìn)行設(shè)計,之后進(jìn)一步集成視圖,在經(jīng)過分析從而取得最后的結(jié)果。對概念進(jìn)行設(shè)計時采用實體聯(lián)系(E-R)的模型開發(fā)措施。E-R模型法的構(gòu)成元素有:實體、屬性、聯(lián)系,E-R模型可以用E-R圖來表示,是對用戶工作環(huán)境中所相關(guān)的事物給予提示,對實體特性的描述就是屬性。設(shè)計概念的出發(fā)點(diǎn)是能夠?qū)ζ髽I(yè)組織信息要求的數(shù)據(jù)庫概念結(jié)構(gòu)進(jìn)行反映,就是概念模式。概念模式不依附數(shù)據(jù)庫邏輯結(jié)構(gòu),也不依賴支持?jǐn)?shù)據(jù)庫的DBMS,獨(dú)立于計算機(jī)系統(tǒng)。通過上述分析對數(shù)據(jù)庫的需求,與系統(tǒng)概念模型的特點(diǎn)及開發(fā)方法相結(jié)合,我們可以建立E-R模型圖。實體間關(guān)系屬性實體3.1.2
27、數(shù)據(jù)庫的邏輯結(jié)構(gòu)設(shè)計我們知道,數(shù)據(jù)庫概念模型獨(dú)立于任何特定的數(shù)據(jù)庫管理系統(tǒng),因此,需要根據(jù)具體使用的數(shù)據(jù)庫管理系統(tǒng)的特點(diǎn)進(jìn)行轉(zhuǎn)換。即轉(zhuǎn)化為按計算機(jī)觀點(diǎn)處理的邏輯關(guān)系模型,E-R模型向關(guān)系數(shù)據(jù)庫模型轉(zhuǎn)換應(yīng)遵循下列原則:*每一個實體都是一種關(guān)系*所有表的主鍵必須定義成非空*對于二元聯(lián)系可以按照一對一、一對多、多對多等聯(lián)系來定義不同表的外鍵。 (1)用戶信息表主要是記錄了用戶基本信息。表結(jié)構(gòu)如表3.1所示。表3.1用戶信息表(tb_user)列名數(shù)據(jù)類型長度允許空是否主鍵說明idint4否是自動編號usernamevarchar50否否賬號passwordvarchar50否否密碼userlogti
28、medatetime10否否 上次登錄時間(2)商品品牌信息表主要是記錄了商品品牌的基本信息,表結(jié)構(gòu)如表3.2所示。表3.2商品品牌信息表(tb_brand)列名數(shù)據(jù)類型長度允許空是否主鍵說明idint 4 否 是品牌IDbrandnamevarchar 50否否品牌名稱introvarchar 200否否品牌介紹(3)商品信息表主要用來管理系統(tǒng)中商品的相關(guān)信息,表結(jié)構(gòu)如圖3.3所示。表3.3商品信息表(tb_goods)列名數(shù)據(jù)類型長度允許空是否主鍵說明idInt4否是商品IDbrandidInt4否否品牌IDpricedouble10否否價格introvarchar 200否否商品介紹re
29、markvarchar50否否備注statusint2否否狀態(tài)(4)供應(yīng)商信息表主要記錄了系統(tǒng)中供應(yīng)商的相關(guān)信息,表結(jié)構(gòu)如表3.4所示。表3.4供應(yīng)商信息表(tb_supplier)列名數(shù)據(jù)類型長度允許空是否主鍵說明idint4否是供應(yīng)商IDsuppliernamevarchar50否否供應(yīng)商名addressvarchar50否否地址postcodevarchar50否否郵編faxvarchar50否否傳真telvarchar50否否電話emailvarchar50否否郵箱statusint4否否狀態(tài)(5)客戶信息表主要記錄系統(tǒng)中客戶的相關(guān)信息,表結(jié)構(gòu)如表3.5所示表3.5客戶信息表(tb_c
30、ustomer)列名數(shù)據(jù)類型長度允許空是否主鍵說明idint4否是客戶IDcustomenamevarchar50否否客戶名稱addressvarchar50否否地址postcodevarchar50否否郵編faxvarchar50否否傳真telvarchar50否否電話emailvarchar50否否郵箱statusint4否否狀態(tài)(6)庫存信息表主要記錄系統(tǒng)中庫存的相關(guān)信息,表結(jié)構(gòu)如表3.6所示表3.6庫存信息表(tb_stock)列名數(shù)據(jù)類型長度允許空是否主鍵說明idint4否是庫存IDstocknamevarchar50否否倉庫名稱stocknumbervarchar50否否倉庫編號g
31、oodsidvarchar50否否貨物IDnumbervarchar50否否數(shù)量positionvarchar50否否位置statusint4否否狀態(tài)3.1.3數(shù)據(jù)庫的連接原理采用JDBC連接數(shù)據(jù)庫的方式,只需在工程中導(dǎo)入對應(yīng)數(shù)據(jù)庫的jar包,就可以方便的對數(shù)據(jù)庫進(jìn)行連接,在程序中,用Class.forName()方法來加載驅(qū)動程序,在用DriverManager的getConnection()方法就可以創(chuàng)建一個數(shù)據(jù)庫連接。程序采用的是DAO模式來操作數(shù)據(jù)庫,DAO(Data Access Object,數(shù)據(jù)訪問對象),是Java編程中的經(jīng)典模式,已被廣泛應(yīng)用,也是J2EE架構(gòu)中持久層框架的基
32、礎(chǔ)知識,基于分層次式的軟件架構(gòu)來實現(xiàn)對數(shù)據(jù)庫的訪問操作。DAO模式的主要思想就是從抽象數(shù)據(jù)源獲取與操縱數(shù)據(jù)的方法。抽象數(shù)據(jù)的意義就是編寫應(yīng)用程序的開發(fā)人員不需要關(guān)心數(shù)據(jù)庫的物理位置,已經(jīng)是何種數(shù)據(jù)庫,只需使用系統(tǒng)封裝好的數(shù)據(jù)庫中表示記錄的數(shù)據(jù)對象即可。其思想如圖3.7所示:封裝使用DataSourceDataAccessObjectBusinessObject創(chuàng)建/使用獲取/修改DataTransferObject圖3.7 DAO模式類圖 圖中BussinessObject是業(yè)務(wù)對象,是使用DAO模式的客戶端;DataTransferObject數(shù)據(jù)傳輸對象,在應(yīng)用程序不同層次之間傳輸對象,在
33、一個分布式應(yīng)用程序中,通??梢蕴岣哒淼男阅?;DataObjectAcces數(shù)據(jù)輸入/輸出對象封裝了對數(shù)據(jù)源的一些基本操作;DataSource指的是數(shù)據(jù)源。可以從圖中看出,DAO模式分離了業(yè)務(wù)邏輯和數(shù)據(jù)羅即將,是的編寫的軟件具有良好的層次式體系結(jié)構(gòu)。本系統(tǒng)為了方便數(shù)據(jù)庫的操作,主要使用DBContent的對象來接一個數(shù)據(jù)庫(建立一個類DBContent),代碼如下:public DBContent()String CLASSFORNAME= com.mysql.jdbc.Driver;/連接數(shù)據(jù)庫的驅(qū)動String url= jdbc:mysql:/localhost:3306/db_nfc
34、p?Unicode=true&haracterEncoding=utf-8;String user=root;String password= root;tryClass.forName(CLASSFORNAME);con= DriverManager.getConnection(url,user,password);/加載數(shù)據(jù)庫的驅(qū)動stmt=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);catch(Exception ex)ex.printStackTrace();在程序需要連
35、接數(shù)據(jù)庫的地方,只需要生成一個DBConnet的對象,就可以對數(shù)據(jù)庫進(jìn)行連接并操作。第四章 系統(tǒng)功能實現(xiàn)在管理信息系統(tǒng)的生命周期中,僅過了需求分析、系統(tǒng)設(shè)計等階段之后,便開始了系統(tǒng)實施階段。在系統(tǒng)分析和設(shè)計階段,系統(tǒng)開發(fā)工作主要是集中在邏輯、功能和技術(shù)設(shè)計上,系統(tǒng)實施階段要繼承此前面各個階段的工作成果,將技術(shù)設(shè)計轉(zhuǎn)化為物理實現(xiàn),因此系統(tǒng)實施的成果是系統(tǒng)分析和設(shè)計階段的結(jié)晶。4.1后臺登陸頁面1. 綜述:在使用本系統(tǒng)前首先要完成的就是登錄,用戶在登陸界面的指定位置輸入自己的用戶名和密碼,系統(tǒng)會通過數(shù)據(jù)庫在用戶表中查找,如果存在該條記錄,則獲得該用戶的權(quán)限,并將用戶信息放入session中,如果沒
36、有對應(yīng)的記錄,則返回登陸頁面,并顯示登錄失敗的具體原因。 2.程序運(yùn)行截圖如圖4.1所示:圖4.1 用戶登陸頁面設(shè)計3.具體實現(xiàn):用戶在登陸頁面輸入用戶名和密碼以,點(diǎn)擊登錄,就會跳轉(zhuǎn)到登陸的service中,在該service中會對用戶名,密碼進(jìn)行存在判斷,如果能找到對應(yīng)的記錄,就提示進(jìn)入到主界面,如果沒有則提示“用戶名和密碼不正確”,頁面會跳回到登陸頁。關(guān)鍵代碼:request.setCharacterEncoding(gb2312);/對請求進(jìn)行統(tǒng)一編碼,能正常接收中文 String username=request.getParameter(username); /接收表單中的usern
37、ame屬性 String password=request.getParameter(password);/接收表單中的password屬性 String str=select * from tb_user where + username=+username+ and password=+password+; ResultSet rs=rst.getResult(str);/執(zhí)行SQL語句獲得結(jié)果集對象 session.setAttribute(isLog,new String(0);/判斷用戶是否登錄,當(dāng)isLog的屬性為0時,說明用戶并沒有登錄 if(!rs.next()/結(jié)果集沒有找到
38、所要查找的行 out.println(alert(用戶名或密碼錯誤);+ parent.location.href=index.jsp;); else session.setAttribute(username,rs.getString(username);/保存登錄信息到session對象中 session.setAttribute(password,rs.getString(password); session.setAttribute(isLog,new String(1);/將isLog屬性設(shè)置為1 /獲得用戶上次登錄系統(tǒng)的時間 session.setAttribute(userLas
39、tLogTime,rs.getString(userLastLogTime); String strsql=calendar.getDate(); int id=rs.getInt(ID); /將該用戶本次登錄系統(tǒng)的時間在用戶信息表中更新 String strUpdate=update tb_user set userLastLogTime=+strsql+ where ID=+id+; rst.getResult(strUpdate);/執(zhí)行SQL語句 response.sendRedirect(chat.jsp);/登錄成功后轉(zhuǎn)到系統(tǒng)主頁面 4.2系統(tǒng)主頁面1.描述:用戶主頁面:左方頁面展
40、示了用戶可操作的幾大功能,進(jìn)入相關(guān)的功能頁面可以鏈接到子菜單,每個管理模塊下面都有相應(yīng)的子菜單。2.用戶主界面如圖4.2所示:圖4.2用戶主頁面系統(tǒng)的攔截器會對每個請求進(jìn)行攔截,防止用戶跳過登錄使用其他功能if(session.getAttribute(admin)=null) out.print(alert(請您先登錄!);window.open(./login.jsp,_self); 4.2.1產(chǎn)品信息管理4.2.1.1產(chǎn)品信息錄入1. 描述:用戶新建一條產(chǎn)品信息,只有在產(chǎn)品信息中的產(chǎn)品才可以進(jìn)行之后的各種入庫和出庫操作。2. 系統(tǒng)產(chǎn)品錄入界面如圖4.3所示:圖4.3 產(chǎn)品信息錄入3.流程
41、圖如下圖4.4所示:登陸系統(tǒng)用戶錄入產(chǎn)品信息 系統(tǒng)驗證錄入成功結(jié) 束通過未通過圖4.4 產(chǎn)品信息錄入流程圖4.2.1.2產(chǎn)品查詢1.描述:用戶點(diǎn)擊左側(cè)的菜單“產(chǎn)品查詢”,頁面跳轉(zhuǎn)到產(chǎn)品列表界面,調(diào)用后臺的方法查詢所有商品信息。2.系統(tǒng)運(yùn)行圖如圖4.5所示圖4.5 產(chǎn)品列表關(guān)鍵代碼: 商品查詢 (Page-1)*pagesize-1)% 商品編號: 規(guī)格: 簡稱: 商品名稱: 包裝: 產(chǎn)地: 批號: 供應(yīng)商全稱: 計量單位: 批準(zhǔn)文號: 備注: 4.2.3供應(yīng)商信息管理4.2.2.1供應(yīng)商信息錄入1. 描述:在此頁面主要是輸入供應(yīng)商信息,包括供應(yīng)商名稱、地址、郵編、電話、郵箱等信息。2. 系統(tǒng)運(yùn)
42、行效果如圖4.7所示:圖4.7 供應(yīng)商信息錄入4.2.2.2供應(yīng)商信息查詢1.描述:用戶通過選擇不同的條件刪選出自己想獲得的供應(yīng)商記錄。2.系統(tǒng)運(yùn)行效果如圖4.8所示圖4.8 供應(yīng)商列表頁面供應(yīng)商管理關(guān)鍵代碼:供應(yīng)商信息查詢 (Page-1)*pagesize-1)% 供應(yīng)商全稱: 簡稱: 地址: 郵政編碼: 電話: 傳真: 聯(lián)系人: 聯(lián)系人電話: E-Mail: 開戶銀行: 4.2.3客戶信息管理4.2.3.1客戶信息管理 1.描述:在此頁面主要是輸入客戶信息,包括客戶名稱、地址、郵編、電話、郵箱等信息。2.系統(tǒng)運(yùn)行效果如圖4.9所示:圖4.9客戶信息管理客戶管理核心代碼:客戶查詢結(jié)果并分頁顯示meta
- 溫馨提示:
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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 110中國人民警察節(jié)(筑牢忠誠警魂感受別樣警彩)
- 2025正字當(dāng)頭廉字入心爭當(dāng)公安隊伍鐵軍
- XX國企干部警示教育片觀后感筑牢信仰之基堅守廉潔底線
- 2025做擔(dān)當(dāng)時代大任的中國青年P(guān)PT青年思想教育微黨課
- 2025新年工作部署會圍繞六個干字提要求
- XX地區(qū)中小學(xué)期末考試經(jīng)驗總結(jié)(認(rèn)真復(fù)習(xí)輕松應(yīng)考)
- 支部書記上黨課筑牢清廉信念為高質(zhì)量發(fā)展?fàn)I造風(fēng)清氣正的環(huán)境
- 冬季消防安全知識培訓(xùn)冬季用電防火安全
- 2025加強(qiáng)政治引領(lǐng)(政治引領(lǐng)是現(xiàn)代政黨的重要功能)
- 主播直播培訓(xùn)直播技巧與方法
- 2025六廉六進(jìn)持續(xù)涵養(yǎng)良好政治生態(tài)
- 員工職業(yè)生涯規(guī)劃方案制定個人職業(yè)生涯規(guī)劃
- 2024年XX地區(qū)黨建引領(lǐng)鄉(xiāng)村振興工作總結(jié)
- XX中小學(xué)期末考試經(jīng)驗總結(jié)(認(rèn)真復(fù)習(xí)輕松應(yīng)考)
- 幼兒園期末家長會長長的路慢慢地走