企業(yè)進銷存系統(tǒng)-畢業(yè)論文.doc
《企業(yè)進銷存系統(tǒng)-畢業(yè)論文.doc》由會員分享,可在線閱讀,更多相關《企業(yè)進銷存系統(tǒng)-畢業(yè)論文.doc(48頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、畢業(yè)設計(論文)設計(論文)題目: 企業(yè)進銷存系統(tǒng) 畢業(yè)論文摘 要隨著科學技術的快速發(fā)展,生活中的每個角落都離不開信息技術,信息技術的不斷進步,互聯(lián)網(wǎng)的影響不斷深刻,帶來了結果就是網(wǎng)絡信息的急劇增長。而社會上的各行各業(yè)也無法脫離于這股時代大潮流,通過應用最新的信息技術,實現(xiàn)自己行業(yè)內(nèi)部的信息化,進而簡化和規(guī)范自己行業(yè)內(nèi)部的業(yè)務行為和規(guī)則,是每個企業(yè)都要面對的問題。通過企業(yè)進銷存平臺,各種中小型零售商可以在線管理自己的買賣行為,給經(jīng)營者帶來了很大的便利。進銷存系統(tǒng)的核心在于其對自己倉庫數(shù)量的管理,以及貨物入庫和貨物出庫時倉庫與購物車之間數(shù)據(jù)的協(xié)同對應。企業(yè)進銷存系統(tǒng)在前臺頁面上選取JSP作為開發(fā)
2、語言,數(shù)據(jù)庫選用了MySQL數(shù)據(jù)庫,開發(fā)IDE采用MyEclipse 10,運行服務器采用tomcat 6.0。企業(yè)進銷存系統(tǒng)是一個基于B/S的功能強大的進銷存系統(tǒng)。關鍵詞:進銷存,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ā)工具及技術11.3.1開發(fā)工具11.3.2 JSP技術21.3.3 JavaScript31.
7、4軟硬件需求3第二章 系統(tǒng)分析42.1可行性分析42.1.1技術可行性52.1.2經(jīng)濟可行性52.1.3運行可行性52.1.4法律可行性52.1.5事件可行性52.2功能模塊分析52.3設計的基本思想82.4性能需求92.4.1系統(tǒng)的安全性92.4.2數(shù)據(jù)的完整性92.5界面需求9第三章 數(shù)據(jù)庫設計103.1數(shù)據(jù)庫的分析與設計103.1.1數(shù)據(jù)庫的概念結構設計103.1.2數(shù)據(jù)庫的邏輯結構設計113.1.3數(shù)據(jù)庫的連接原理13第四章 系統(tǒng)功能實現(xiàn)144.1后臺登陸頁面144.2基礎模塊164.2.1商品管理174.2.2供應商管理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結 論33參考文獻34致 謝35III畢業(yè)論文第一章 緒論1.1課題背景互聯(lián)網(wǎng)的飛速發(fā)展不斷影響著社會上各行各業(yè)的經(jīng)營情況,從上個世紀起,隨著互聯(lián)網(wǎng)在中國的普及,我國的許多零售商開始嘗試通過信息系統(tǒng)來管理他們的日常業(yè)務。但由于存在各種因素,例如企業(yè)的業(yè)務各不相同、信息化的法律規(guī)定也不夠明確、各種物流系統(tǒng)不夠完善,這些因素交織在一起,嚴重阻礙著信息化走進零售企業(yè)。本世紀以來,中國的基礎設施有了長足的進步,之前阻礙信息化的因素也一個一個的被解決
9、,企業(yè)進銷存系統(tǒng)終于在中小型零售商中蔓延開來。 1.2目的和意義倉儲信息化管理與傳統(tǒng)管理方式比較有很多的優(yōu)點如:1查詢比較方便倉儲信息化提供了非常多的查詢途徑,可以通過品種、日期等途徑進行查詢,快速又準確。2信息量大與過去的管理方式比較,倉儲信息化管理能夠提供大量商品信息。3成本比較低,風險小,不受地點的限制信倉儲息化管理最突出的優(yōu)勢是,存儲的數(shù)據(jù)具有可靠性,與常見的報表相比,計算及存儲具有更高的可靠性,這使得經(jīng)營者可以更方便的查看當前的庫存和出入庫信息。 1.3開發(fā)工具及技術1.3.1開發(fā)工具系統(tǒng)所采用的開發(fā)工具大部分為開源工具,具有較高的穩(wěn)定性,同時這些工具都有大量的介紹文獻和使用指導,是
10、的用戶可以更方便的使用它們進行系統(tǒng)的開發(fā)。1.3.1.1 MyEclipseMyEclipse,通常用來設計Java, J2EE的Eclipse插件集合,利用它可以完成對數(shù)據(jù)庫和J2EE的開發(fā)。通過對應用程序服務器進行整合,可以大大的增強運算速度。MyEclipse的功能十分強大,幾乎涵蓋了各種設計功能。1.3.1.2 Tomcat Tomcat是一種是一個免費的開放源代碼的Web 應用服務器。在訪問客戶比較少的情況下被經(jīng)常采納,在設計JSP 程序時成為最好的選擇。換句話說,將Tomcat服務器安裝到一臺電腦上時,可通過它對HTML頁面的訪問請求進行配合。事實上,Tomcat可以看成Apach
11、e 服務器基礎上的延伸,但它工作時相對比較獨立,因此當tomcat工作時,事實上它是看成一個與Apache 服務器相對獨立的進程運行的。1.3.1.3 MySQL MySQL采用C和C+進行設計,并同時采納了不同的編譯器來檢驗,確定源代碼的可移植性;支持AIX、FreeBSD、HP-UX、Linux、Mac OS、NovellNetware、OpenBSD、OS/2 Wrap、Solaris、Windows等多種操作系統(tǒng);為多種編程語言提供了API;支持多線程,充分對CPU資源加以利用;提供TCP/IP、ODBC和JDBC等很多數(shù)據(jù)庫連接途徑;能夠對擁有很多條記錄的大型數(shù)據(jù)庫進行運算。通常來說
12、,MySQL所設計的功能足以滿足一般的個人客戶和中小型企業(yè),而且因為MySQL是開放源碼軟件,所以能夠在很大程度上減少整體的費用。1.3.2 JSPJSP程序使用了Java編程語言,JSP技術可以對動態(tài)網(wǎng)頁進行封裝。通過tags和scriptlets,網(wǎng)頁還能訪問存在于服務端的資源的應用邏輯。JSP可以分離網(wǎng)頁邏輯與網(wǎng)頁設計和顯示,對可重用的基于組件的開發(fā)進行支撐,更容易的對基于Web的應用程序進行設計。當Web服務器接收到訪問JSP網(wǎng)頁的請求時,首先運行的程序段,接下來將JSP文件中的HTML代碼和運行效果一并返還給用戶。通過Java文件的插入能夠對數(shù)據(jù)庫、網(wǎng)頁多重定向等運行,從而滿足構建動
13、態(tài)網(wǎng)頁所需要的程序。JSP和Servle相同,都可以通過服務器端運行。由于能夠將一個HTML文本返回給用戶端,所以用戶端具備瀏覽器就可以進行瀏覽。HTML程序和穿插在內(nèi)部的Java程序可以構建JSP網(wǎng)頁。在服務器被用戶端訪問時,能夠處理相應的Java代碼,然后將產(chǎn)生的HTML頁面再返回給用戶端的瀏覽器。JSP的設計關鍵是Servlet,通常大型的Web應用程序的設計成果也通過Java Servlet和JSP的協(xié)作。JSP既擁有了方便快捷的Java程序,又統(tǒng)統(tǒng)的面向用戶,既實現(xiàn)了平臺的無關性危險還比較小,可以具備互聯(lián)網(wǎng)的全部優(yōu)勢。JSP技術的優(yōu)點:(1)一次編寫,到處運行。除了系統(tǒng)之外,代碼無需
14、做任何改動。 (2)系統(tǒng)的多平臺支持。通常情況下,能夠在任何情況下的全部平臺上進行設計,能夠安排在任何情況中,也能夠在任何情況下進行發(fā)展。相比ASP/.net來說,優(yōu)點是顯而易見的。(3)強大的可塑性。通過一個不大的Jar程序能夠對Servlet/JSP進行運行,也能夠通過很多服務器進行集群和負載平衡,甚至能夠通過多臺Application解決問題。單臺服務器到多臺服務器,Java展現(xiàn)了一個強大的功能。 (4)具有強大和多樣化的開發(fā)工具支持。Java已經(jīng)有了很多的設計方法,何況大部分工具都是沒有花費的,這中間有很多都在多種平臺之下順暢的進展。 (5)支持服務器端組件。只有很有力的服務器端組件才
15、能支撐web運行,因此開發(fā)者可以在調用web頁面時通過另外的開發(fā)工具來達成紛亂效用的組件,來加強系統(tǒng)的可操作性。JSP可以通過完善的JAVA BEANS 組件來達成紛亂的商務功能。內(nèi)部對象表現(xiàn)出:request 用戶端請求,此請求會涵蓋來自GET/POST請求的參數(shù); response網(wǎng)頁傳回用戶端的反應;管理pageContext 網(wǎng)頁的屬性;session 與請求相關的會話;application servlet正在進行的內(nèi)容;out 用來輸送響應的輸出流; config代碼片段配置對象;pageJSP網(wǎng)頁本身。1.3.3 JavaScriptJavaScript是一種根據(jù)對象和情況驅使而
16、且相對危險性比較低的用戶端腳本語言。還可以大范圍的用于用戶端Web設計的腳本語言,一般可以用做增加HTML網(wǎng)頁動態(tài)功能,例如反饋用戶的所有操控。JavaScript的一個關鍵作用是向對象的功能,根據(jù)以對象為基礎的程序開發(fā),能夠用更直接、系統(tǒng)化和能夠反復利用的方法設計程序。根據(jù)HTML程序,可以采用Javascript對交互式Web網(wǎng)頁進行設計。Javascript的應用能夠達成網(wǎng)頁和客戶之間及時、動態(tài)、交互性的關系。這樣網(wǎng)頁可以呈現(xiàn)非常豐富的信息和非常好看的內(nèi)容。在本系統(tǒng)中不少設計都采用了javascript技術,例如校驗用戶輸入數(shù)據(jù)的有效性等。1.4計算機需求硬件需求:CPU:酷睿i3內(nèi)存:
17、 1GB以上主頻:2GBHZ以上硬盤:300GB以上軟件需求:系統(tǒng)版本: Win7 Win8IDE:MyEclipse 10系統(tǒng)服務器: Tomcat 6.0數(shù)據(jù)庫版本:MySQL 5.0Java版本:Java 1.6瀏覽器版本:Google Chrome第二章 系統(tǒng)分析2.1可行性分析所謂的可行性分析是指通過調查客觀現(xiàn)實,再應用的科學的手段,預測自己的開發(fā)計劃是否具有現(xiàn)實意義。2.1.1技術可行性系統(tǒng)的開發(fā)由本人擔任,在開發(fā)工具上,選用Myeclipse,數(shù)據(jù)庫采用mysql,開發(fā)語言選擇java,模式采用MVC模式,所有的技術都是本人大學期間所學,且這些技術都經(jīng)歷了時間的考驗,被證明是可靠
18、地技術,技術上同樣具有可行性。2.1.2經(jīng)濟可行性本系統(tǒng)的運行對機器本身的硬件要求并不高,也不需要管理人員具有太多的專業(yè)知識,同時開發(fā)人員由本人擔任,所以也無需考慮系統(tǒng)開發(fā)的人力資源成本,所以本系統(tǒng)的開發(fā)在經(jīng)濟上是可行的。2.1.3運行可行性本系統(tǒng)在開發(fā)完成后,所有的模塊都進行了相應的功能檢測和穩(wěn)定性檢測,運行可行性得到了保證。2.1.4法律可行性本系統(tǒng)擁有自主的只是產(chǎn)權,沒有使用任何違法的軟件也沒有交易任何非法的成品,所以在法律可行性上也沒有需呀擔心的地方。2.1.5時間可行性本人的畢業(yè)設計有充足的時間進行開發(fā),且前期經(jīng)歷了周密的設計,因此不存在時間可行性上的問題。綜上所述,開發(fā)一個網(wǎng)上網(wǎng)上
19、男裝銷售系統(tǒng)是必要可行的。2.2功能模塊分析 按照最初的開題報告設想,系統(tǒng)主要分為一下幾個大的功能模塊。 (1)客戶管理模塊 客戶管理模塊用于管理進銷存系統(tǒng)的客戶,功能包括添加客戶,修改客戶,刪除客戶??蛻艄芾砟K的用例圖如圖3-1所示:圖3-1客戶管理模塊用例圖(2)供應商管理模塊 供應商管理模塊用于管理進銷存系統(tǒng)的供應商,功能包括添加供應商,修改供應商,刪除供應商。供應商管理模塊的用例圖如圖3-2所示:圖3-2供應商管理模塊用例圖(3)產(chǎn)品管理模塊 產(chǎn)品管理模塊用于管理進銷存系統(tǒng)的產(chǎn)品,功能包括添加產(chǎn)品,修改產(chǎn)品,刪除產(chǎn)品。產(chǎn)品管理模塊的用例圖如圖3-3所示:圖3-3產(chǎn)品管理模塊用例圖 (
20、4)庫存管理功能庫存管理模塊用于管理進銷存系統(tǒng)的庫存,功能包括產(chǎn)品入庫,入庫查詢,庫存查詢。庫存管理模塊的用例圖如圖3-4所示:圖3-4庫存管理模塊用例圖 (5)出庫管理功能出庫管理模塊用于管理進銷存系統(tǒng)的出庫,功能包括銷售出庫,出庫查詢,銷售退貨。出庫管理模塊的用例圖如圖3-5所示:圖圖3-5出庫管理模塊用例圖 進銷存管理人員功能模塊圖2.3系統(tǒng)設計的基本構想系統(tǒng)設計的基本構想可以概括為以下幾點:1保障開發(fā)速度。由于開發(fā)時間有限,所以整個開發(fā)過程首要的就是保證開發(fā)的進度能夠滿足設計時的設想,這樣才能在計劃的時間內(nèi)完成項目2. 系統(tǒng)模塊化。在開發(fā)項目之前就應當把系統(tǒng)分成較小的模塊,這樣不僅利于
21、掌握開發(fā)的進度也方便開發(fā)之后的調試。3. 界面簡潔。簡潔漂亮友好的界面,可以使系統(tǒng)的用戶獲得更好的用戶體驗。4系統(tǒng)設計應當周全。系統(tǒng)在設計時應當盡量使自己的邏輯更加合理,同時為了以后的需求變動,系統(tǒng)應有較好的擴充能力。5. 運用B/S模式。B/S模式尤其先天的優(yōu)越性,用戶不需要額外下載特定的客戶端,這使得用戶的使用更為方便。6. 先進的設計理念。設計過程中應當應用目前最流行的設計理念,比如MVC模式,數(shù)據(jù)庫連接池等。2.4性能需求2.4.1系統(tǒng)的安全性超市的進銷存系統(tǒng),在保證功能可用的前提下,也要實現(xiàn)系統(tǒng)的安全性。1.用戶在使用進銷存系統(tǒng)之前,首先要輸入自己的用戶名和密碼,只有通過系統(tǒng)校驗的用
22、戶才有權限,審核不通過的用戶無法登錄系統(tǒng),進而也無法使用系統(tǒng)的任何資源,這種先驗證后使用的模式保證了系統(tǒng)的準確性及可靠性。2.在具體應用過程中對不同的權限進行限定,權限不同的用戶在審核通過登陸后,無法進行無權限操作,只有系統(tǒng)管理員能夠操作全部功能;普通的用戶根據(jù)自己的角色不同,只能實現(xiàn)和應用系統(tǒng)的部分功能。2.4.2數(shù)據(jù)的完整性1.為了保證數(shù)據(jù)的可靠,允許少量數(shù)據(jù)冗余,關鍵的字段不允許為空2.不同表中的數(shù)據(jù)要做到一致性3.不允許非法輸入2.5界面需求隨著開發(fā)技術的不斷進步,程序的前臺設計已經(jīng)成為用戶對軟件質量進行評價的一條關鍵指標,一個友好的前臺可以使用戶使用系統(tǒng)的信心和興趣高昂,使得系統(tǒng)的使
23、用率得到提高,JSP應用java語言作為其腳本語言,JSP頁面給位于服務器的庫單元提供一個訪問接口用來實現(xiàn)基于HTTP的訪問。JSP創(chuàng)建動態(tài)頁面十分容易。前臺界面是指后臺系統(tǒng)與系統(tǒng)用戶交流的窗口,前臺界面的作用包括信息的輸入輸出和人機對話的界面格式。1.輸出設計所謂系統(tǒng)的輸出是指由計算機對用戶輸入的信息進行解決,進一步生成有用的信息,同時這種信息符合一定的規(guī)則,這份數(shù)據(jù)由管理者使用,這是設計輸出模式的主要目的。系統(tǒng)開發(fā)的過程與實施過程相反,并不是從輸入設計到輸出設計,而是從輸出設計到輸入設計。這是由于輸出表格與使用者直接相聯(lián)系,設計的目的應當是確保使用者可以很方便的使用輸出表格,并且可以將各部
24、門的有用信息及時的反映出來。輸出設計的準繩是既要整體琢磨不同管理層的所有需要,又要簡潔,不要提供給用戶不需要的信息。2.輸入設計輸入數(shù)據(jù)的收集和錄入是比較麻煩的,需要非常多的人力和一定設備,而且經(jīng)常出錯。一旦輸入系統(tǒng)的數(shù)據(jù)不正確,那么處理后的輸出將擴大這些錯誤,因此輸入數(shù)據(jù)的準確性對于整個系統(tǒng)質量的好壞是具有決定性意義的。輸入設計有以下幾點原則:1)輸入量應盡量保持在能滿足處理要求的最低限度。開發(fā)時可使用設置字段初值,下拉式數(shù)據(jù)窗口等方式盡量使用戶鍵盤輸入量減少。隨著輸入量的減少,系統(tǒng)的錯誤率也隨之減少,最終達到減少數(shù)據(jù)的準備時間的目的。2)應盡可能使輸入的準備及輸入的過程進行時比較方便,這樣
25、使錯誤的發(fā)生率降低。3)應盡量早檢查輸入數(shù)據(jù)(盡量接近原數(shù)據(jù)發(fā)生點),以便使錯誤更正比較及時。4)輸入數(shù)據(jù)盡早地記錄成其處理所需的形式,以防止數(shù)據(jù)由一種介質轉移到另一種介質時需要轉錄而可能發(fā)生的錯誤。第三章 數(shù)據(jù)庫設計3.1數(shù)據(jù)庫的分析與設計數(shù)據(jù)庫是計算機信息系統(tǒng)的基礎。信息的收集、更新、加工、統(tǒng)計、整理、存儲、檢索和傳播等操作只有得到后臺數(shù)據(jù)庫的支撐才可以實現(xiàn)。目前,電腦系統(tǒng)的關鍵與核心部分就是數(shù)據(jù)庫。數(shù)據(jù)庫開發(fā)的優(yōu)劣對整個系統(tǒng)的質量和速度有著直接影響。數(shù)據(jù)庫的設計一般要可以分為個步驟:分別是分析需求、設計概念、設計邏輯、設計物理。3.1.1數(shù)據(jù)庫的概念結構設計設計概念就是在數(shù)據(jù)分析的基礎上
26、自下而上的對整個系統(tǒng)的數(shù)據(jù)庫概念結構進行設計。從使用者的角度對視圖進行設計,之后進一步集成視圖,在經(jīng)過分析從而取得最后的結果。對概念進行設計時采用實體聯(lián)系(E-R)的模型開發(fā)措施。E-R模型法的構成元素有:實體、屬性、聯(lián)系,E-R模型可以用E-R圖來表示,是對用戶工作環(huán)境中所相關的事物給予提示,對實體特性的描述就是屬性。設計概念的出發(fā)點是能夠對企業(yè)組織信息要求的數(shù)據(jù)庫概念結構進行反映,就是概念模式。概念模式不依附數(shù)據(jù)庫邏輯結構,也不依賴支持數(shù)據(jù)庫的DBMS,獨立于計算機系統(tǒng)。通過上述分析對數(shù)據(jù)庫的需求,與系統(tǒng)概念模型的特點及開發(fā)方法相結合,我們可以建立E-R模型圖。實體間關系屬性實體3.1.2
27、數(shù)據(jù)庫的邏輯結構設計我們知道,數(shù)據(jù)庫概念模型獨立于任何特定的數(shù)據(jù)庫管理系統(tǒng),因此,需要根據(jù)具體使用的數(shù)據(jù)庫管理系統(tǒng)的特點進行轉換。即轉化為按計算機觀點處理的邏輯關系模型,E-R模型向關系數(shù)據(jù)庫模型轉換應遵循下列原則:*每一個實體都是一種關系*所有表的主鍵必須定義成非空*對于二元聯(lián)系可以按照一對一、一對多、多對多等聯(lián)系來定義不同表的外鍵。 (1)用戶信息表主要是記錄了用戶基本信息。表結構如表3.1所示。表3.1用戶信息表(tb_user)列名數(shù)據(jù)類型長度允許空是否主鍵說明idint4否是自動編號usernamevarchar50否否賬號passwordvarchar50否否密碼userlogti
28、medatetime10否否 上次登錄時間(2)商品品牌信息表主要是記錄了商品品牌的基本信息,表結構如表3.2所示。表3.2商品品牌信息表(tb_brand)列名數(shù)據(jù)類型長度允許空是否主鍵說明idint 4 否 是品牌IDbrandnamevarchar 50否否品牌名稱introvarchar 200否否品牌介紹(3)商品信息表主要用來管理系統(tǒng)中商品的相關信息,表結構如圖3.3所示。表3.3商品信息表(tb_goods)列名數(shù)據(jù)類型長度允許空是否主鍵說明idInt4否是商品IDbrandidInt4否否品牌IDpricedouble10否否價格introvarchar 200否否商品介紹re
29、markvarchar50否否備注statusint2否否狀態(tài)(4)供應商信息表主要記錄了系統(tǒng)中供應商的相關信息,表結構如表3.4所示。表3.4供應商信息表(tb_supplier)列名數(shù)據(jù)類型長度允許空是否主鍵說明idint4否是供應商IDsuppliernamevarchar50否否供應商名addressvarchar50否否地址postcodevarchar50否否郵編faxvarchar50否否傳真telvarchar50否否電話emailvarchar50否否郵箱statusint4否否狀態(tài)(5)客戶信息表主要記錄系統(tǒng)中客戶的相關信息,表結構如表3.5所示表3.5客戶信息表(tb_c
30、ustomer)列名數(shù)據(jù)類型長度允許空是否主鍵說明idint4否是客戶IDcustomenamevarchar50否否客戶名稱addressvarchar50否否地址postcodevarchar50否否郵編faxvarchar50否否傳真telvarchar50否否電話emailvarchar50否否郵箱statusint4否否狀態(tài)(6)庫存信息表主要記錄系統(tǒng)中庫存的相關信息,表結構如表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ù)庫的方式,只需在工程中導入對應數(shù)據(jù)庫的jar包,就可以方便的對數(shù)據(jù)庫進行連接,在程序中,用Class.forName()方法來加載驅動程序,在用DriverManager的getConnection()方法就可以創(chuàng)建一個數(shù)據(jù)庫連接。程序采用的是DAO模式來操作數(shù)據(jù)庫,DAO(Data Access Object,數(shù)據(jù)訪問對象),是Java編程中的經(jīng)典模式,已被廣泛應用,也是J2EE架構中持久層框架的基
32、礎知識,基于分層次式的軟件架構來實現(xiàn)對數(shù)據(jù)庫的訪問操作。DAO模式的主要思想就是從抽象數(shù)據(jù)源獲取與操縱數(shù)據(jù)的方法。抽象數(shù)據(jù)的意義就是編寫應用程序的開發(fā)人員不需要關心數(shù)據(jù)庫的物理位置,已經(jīng)是何種數(shù)據(jù)庫,只需使用系統(tǒng)封裝好的數(shù)據(jù)庫中表示記錄的數(shù)據(jù)對象即可。其思想如圖3.7所示:封裝使用DataSourceDataAccessObjectBusinessObject創(chuàng)建/使用獲取/修改DataTransferObject圖3.7 DAO模式類圖 圖中BussinessObject是業(yè)務對象,是使用DAO模式的客戶端;DataTransferObject數(shù)據(jù)傳輸對象,在應用程序不同層次之間傳輸對象,在
33、一個分布式應用程序中,通常可以提高整理的性能;DataObjectAcces數(shù)據(jù)輸入/輸出對象封裝了對數(shù)據(jù)源的一些基本操作;DataSource指的是數(shù)據(jù)源。可以從圖中看出,DAO模式分離了業(yè)務邏輯和數(shù)據(jù)羅即將,是的編寫的軟件具有良好的層次式體系結構。本系統(tǒng)為了方便數(shù)據(jù)庫的操作,主要使用DBContent的對象來接一個數(shù)據(jù)庫(建立一個類DBContent),代碼如下:public DBContent()String CLASSFORNAME= com.mysql.jdbc.Driver;/連接數(shù)據(jù)庫的驅動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ù)庫的驅動stmt=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);catch(Exception ex)ex.printStackTrace();在程序需要連
35、接數(shù)據(jù)庫的地方,只需要生成一個DBConnet的對象,就可以對數(shù)據(jù)庫進行連接并操作。第四章 系統(tǒng)功能實現(xiàn)在管理信息系統(tǒng)的生命周期中,僅過了需求分析、系統(tǒng)設計等階段之后,便開始了系統(tǒng)實施階段。在系統(tǒng)分析和設計階段,系統(tǒng)開發(fā)工作主要是集中在邏輯、功能和技術設計上,系統(tǒng)實施階段要繼承此前面各個階段的工作成果,將技術設計轉化為物理實現(xiàn),因此系統(tǒng)實施的成果是系統(tǒng)分析和設計階段的結晶。4.1后臺登陸頁面1. 綜述:在使用本系統(tǒng)前首先要完成的就是登錄,用戶在登陸界面的指定位置輸入自己的用戶名和密碼,系統(tǒng)會通過數(shù)據(jù)庫在用戶表中查找,如果存在該條記錄,則獲得該用戶的權限,并將用戶信息放入session中,如果沒
36、有對應的記錄,則返回登陸頁面,并顯示登錄失敗的具體原因。 2.程序運行截圖如圖4.1所示:圖4.1 用戶登陸頁面設計3.具體實現(xiàn):用戶在登陸頁面輸入用戶名和密碼以,點擊登錄,就會跳轉到登陸的service中,在該service中會對用戶名,密碼進行存在判斷,如果能找到對應的記錄,就提示進入到主界面,如果沒有則提示“用戶名和密碼不正確”,頁面會跳回到登陸頁。關鍵代碼:request.setCharacterEncoding(gb2312);/對請求進行統(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語句獲得結果集對象 session.setAttribute(isLog,new String(0);/判斷用戶是否登錄,當isLog的屬性為0時,說明用戶并沒有登錄 if(!rs.next()/結果集沒有找到
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屬性設置為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);/登錄成功后轉到系統(tǒng)主頁面 4.2系統(tǒng)主頁面1.描述:用戶主頁面:左方頁面展
40、示了用戶可操作的幾大功能,進入相關的功能頁面可以鏈接到子菜單,每個管理模塊下面都有相應的子菜單。2.用戶主界面如圖4.2所示:圖4.2用戶主頁面系統(tǒng)的攔截器會對每個請求進行攔截,防止用戶跳過登錄使用其他功能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)品才可以進行之后的各種入庫和出庫操作。2. 系統(tǒng)產(chǎn)品錄入界面如圖4.3所示:圖4.3 產(chǎn)品信息錄入3.流程
41、圖如下圖4.4所示:登陸系統(tǒng)用戶錄入產(chǎn)品信息 系統(tǒng)驗證錄入成功結 束通過未通過圖4.4 產(chǎn)品信息錄入流程圖4.2.1.2產(chǎn)品查詢1.描述:用戶點擊左側的菜單“產(chǎn)品查詢”,頁面跳轉到產(chǎn)品列表界面,調用后臺的方法查詢所有商品信息。2.系統(tǒng)運行圖如圖4.5所示圖4.5 產(chǎn)品列表關鍵代碼: 商品查詢 (Page-1)*pagesize-1)% 商品編號: 規(guī)格: 簡稱: 商品名稱: 包裝: 產(chǎn)地: 批號: 供應商全稱: 計量單位: 批準文號: 備注: 4.2.3供應商信息管理4.2.2.1供應商信息錄入1. 描述:在此頁面主要是輸入供應商信息,包括供應商名稱、地址、郵編、電話、郵箱等信息。2. 系統(tǒng)運
42、行效果如圖4.7所示:圖4.7 供應商信息錄入4.2.2.2供應商信息查詢1.描述:用戶通過選擇不同的條件刪選出自己想獲得的供應商記錄。2.系統(tǒng)運行效果如圖4.8所示圖4.8 供應商列表頁面供應商管理關鍵代碼:供應商信息查詢 (Page-1)*pagesize-1)% 供應商全稱: 簡稱: 地址: 郵政編碼: 電話: 傳真: 聯(lián)系人: 聯(lián)系人電話: E-Mail: 開戶銀行: 4.2.3客戶信息管理4.2.3.1客戶信息管理 1.描述:在此頁面主要是輸入客戶信息,包括客戶名稱、地址、郵編、電話、郵箱等信息。2.系統(tǒng)運行效果如圖4.9所示:圖4.9客戶信息管理客戶管理核心代碼:客戶查詢結果并分頁顯示meta
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。