基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文_第1頁
基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文_第2頁
基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文_第3頁
基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文_第4頁
基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文_第5頁
已閱讀5頁,還剩36頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計摘要:隨著網(wǎng)絡化和信息化的發(fā)展,人們生活水平的不斷提高,互聯(lián)網(wǎng)已逐步深入人心,人們不再滿足于傳統(tǒng)的購物方式,“網(wǎng)上購物”這種新型的購物方式已經(jīng)為更多的人所接受,越來越多的網(wǎng)絡商店走入了大眾的生活,農(nóng)產(chǎn)品的網(wǎng)絡營銷也成為商家新的運作模式。本網(wǎng)站主要以Java語言為開發(fā)平臺,MySQL為數(shù)據(jù)庫,以及使用SSH(Spring+Struts+Hibernate)框架體系,使用jsp+css+js開發(fā)前臺頁面。此系統(tǒng)具有使用簡單,用戶界面友好,便于操作等特點?;贘AVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第1頁。關鍵詞:JAVA;MySQL;SSH;JSP;農(nóng)產(chǎn)品銷售系統(tǒng)基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第1頁。緒論1.1網(wǎng)站的開發(fā)背景隨著社會的不斷進步及網(wǎng)絡經(jīng)濟時代的蓬勃發(fā)展,互聯(lián)網(wǎng)已逐步深入人心,人們不再滿足于傳統(tǒng)的購物方式,“網(wǎng)上購物”這種新型的購物方式已經(jīng)為更多的人所接受。信息技術飛速發(fā)展,手機的銷售和管理水平也隨之提高,逐步實現(xiàn)信息化,縮減中間渠道,形成網(wǎng)上直銷,免去時間和空間的限制,在傳統(tǒng)購物的過程中,這些中間環(huán)節(jié)是不可能避免的,要想買到自己所需要的商品,就必須去實體店,也就是人們所說的商場,如果網(wǎng)上商城開發(fā)成熟,人們就可以坐在家里,或者是任何一個地方,只要有一臺聯(lián)網(wǎng)的電腦,就能買到自己需要和想要的商品,極大的方便了人們的生活,節(jié)省了很多時間,此外網(wǎng)上的商品種類齊全,對一些特殊商品的需求也能得到滿足,由于網(wǎng)上購物可以減少很多中間環(huán)節(jié),大大的節(jié)省了成本,只需很少的運費就能送到家,所以再價錢上也占很大的優(yōu)勢。基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第5頁。在國外,“網(wǎng)上購物”的理念已經(jīng)十分成熟,結合購物搜索、在線圖形技術等實現(xiàn)在線試穿、在線著裝,并且可以以平面圖像、3D影像的表現(xiàn)形式使用戶的體驗水平非常人性化。而我國的信息化購物起步相對較晚,但由于電子商務的飛速發(fā)展,信息化程度有了明顯的提高,像淘寶、當當、卓越等網(wǎng)站和新浪、搜狐的網(wǎng)上商城等,極大的促進了我國商品銷售信息化的發(fā)展?;贘AVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第5頁。在設計上,該系統(tǒng)采用MVC模式,由于是滿足一些小型企業(yè)和商家的需求,不可能把所有的功能都完善,這對于任何一個網(wǎng)站來說也是不可能實現(xiàn)的,隨著客戶需求的增加,后期的升級與改進是很必要的,這種開發(fā)模式將顯示模式與設計模式相分離,對于后期的開發(fā)人員來說,是一件極大的好事,只需增加相應的代碼,提供相應的接口就可以了,而不必過多的考慮系統(tǒng)的整體情況,當然,如果是大型的網(wǎng)站,就必須運用一些架構等,但對于這樣的小型網(wǎng)站來說,這種模式就足夠了。此網(wǎng)上手機銷售網(wǎng)站正是針對傳統(tǒng)銷售出現(xiàn)的一系列問題而開發(fā)的,實現(xiàn)了銷售的高效率、低錯誤、信息化、自動化和規(guī)范化。1.2系統(tǒng)開發(fā)工具概述1.2.1JSP簡介JSP(JavaServerPages)是由SunMicrosystems公司倡導,許多公司參與一起建立的一種動態(tài)網(wǎng)頁技術。就是普通網(wǎng)頁文件中插入Java程序和JSP標記,就形成了JSP文件?;贘AVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第6頁。JSP是在服務端執(zhí)行的,使用Java語言編寫和封裝生成動態(tài)網(wǎng)頁的處理邏輯,將邏輯與顯示分離,服務器遇到訪問JSP頁面的請求時,先執(zhí)行網(wǎng)頁中的程序代碼段,然后再將執(zhí)行后的結果和JSP文件中的HTML代碼生成一個HTML文本返回給客戶端,因此客戶端只需要有瀏覽器就能瀏覽?;贘AVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第6頁。1.2.2JSP的優(yōu)點JSP是目前主流的網(wǎng)絡編程環(huán)境之一,是一種將各種Web元素組合在一起的服務器技術,是一個網(wǎng)站開發(fā)的平臺,它提供了生成Web應用程序所必需的各種服務。主要有以下幾個好處:(1)一次編寫,到處運行。(2)系統(tǒng)的多平臺支持。(3)強大的可伸縮性。(4)多樣化和開發(fā)工具的支持。(5)支持服務器端組件。1.2.3JSP的弱勢(1)很高的復雜性,因為具有跨平臺性和強大的伸縮性,所以無形之中就增加了復雜程度。(2)Java的運行是靠class常駐內(nèi)存來實現(xiàn)的,占用內(nèi)存較高。此外還需要一定的硬盤空間存放.java文件和.class文件以及相應的版本文件。1.2.4MyEclipse簡介MyEclipse是一個用于開發(fā)Java、J2ee的Eclipse插件集合,功能強大,支持廣泛,對各種開源產(chǎn)品的支持十分不錯。基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第7頁。簡單而言,MyEclipse是Eclipse的插件,是最強大的J2EE的集成開發(fā)環(huán)境之一,支持代碼編寫、配置、測試以及除錯,MyEclipse6.0以后版本安裝時不再需要安裝Eclipse?;贘AVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第7頁。1.2.5MySql簡介MySQL是一種關聯(lián)數(shù)據(jù)庫管理系統(tǒng),將數(shù)據(jù)保存在不同的表中,因此增加了速度并提高了靈活性。MySQL使用SQL“結構化查詢語言”,多種操作系統(tǒng)的支持,為多種編程語言提供了API,支持多線程,優(yōu)化的SQL查詢算法,可以處理大型數(shù)據(jù)庫,支持多種存儲引擎等,成本低、速度快、體積小和開放源碼,由于它擁有這么多優(yōu)點,所以許多中小型網(wǎng)站都采用MySQL作為網(wǎng)站的數(shù)據(jù)庫。1.2.6Tomcat簡介Tomcat是Apache軟件基金會(ApacheSoftwareFoundation)的Jakarta項目中的一個核心項目,由Apache、Sun和其他一些公司及個人共同開發(fā)而成。其性能穩(wěn)定、技術先進,擴展性好,占用的系統(tǒng)資源小,支持郵件服務等與負載平衡等系統(tǒng)功能并且免費,得到了開發(fā)人員的喜愛和認可,成為目前流行的應用服務器。系統(tǒng)開發(fā)環(huán)境A性能要求基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第8頁。本網(wǎng)站采用了JSP開發(fā)技術和MySQL數(shù)據(jù)庫技術,因此必須在WindowsXP以上的操作系統(tǒng)上運行。作為一個普通的小型網(wǎng)站來說,沒有必要對所有的數(shù)據(jù)都進行加密?;贘AVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第8頁。B運行要求硬件要求:1)服務器端:一臺配置為512M內(nèi)存,CPU為IntelPentium=4\*ROMANIV2.0GHZ以上,硬盤容量為80G的微機.2)客戶端:586以上的微機軟件要求:1)服務器端:使用語言:JSP(JavaServerPages)數(shù)據(jù)庫:MySQLJSP編譯環(huán)境:J2SDK+TOMCAT+MySQL操作系統(tǒng):WindowsXPProfessional以上瀏覽器:InternetExplore6.0以上版本2)客戶端:IE6.0以上的瀏覽器版本,800*600分辨率以上,使用Windows9X/2000/NT/XP以上系統(tǒng)2需求分析2.1功能需求分析基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第9頁。一是前臺顧客購買功能,客戶進入網(wǎng)站首頁可以查看最新上市的商品,正在搞活動的商品,商家推薦的商品,分類商品以及相關內(nèi)容。當用戶選中某款商品時可以進行登錄購買,如果不是本站會員也可以進行注冊,然后再繼續(xù)購買,與傳統(tǒng)購物流程相似,但操作更為簡單,實現(xiàn)了隨時隨地只要在電腦前就可以購物的愿望。基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第9頁。二是用戶的后臺管理功能。不同的用戶有不同的權限,如果是管理員,可以實現(xiàn)商品的添加與商品信息和用戶信息的修改、活動商品的管理、對違法用戶的刪除,訂單的查看與管理等功能,如果是普通用戶則只能對自己信息的修改,自己訂單的查詢等操作。2.2業(yè)務流程分析管理員對手機商城用戶人員的管理(用戶級別的修改、對用戶信息的查看和刪除),商品的管理(商品的添加,刪除,對商品信息的查看和更新),訂單的管理(訂單的查看和刪除)等。普通用戶在網(wǎng)站首頁了解相關信息發(fā)布(各型號手機信息、特價手機、新款手機),用戶信息的管理(用戶登錄、修改密碼、選購手機、自助訂機、訂單提交、訂單查看)。后臺管理端流程如圖1,前臺用戶端流程如圖2:2.3數(shù)據(jù)流分析數(shù)據(jù)流程分析即對信息流的傳遞、流動、存儲、處理等相關內(nèi)容的分析。目前的數(shù)據(jù)流程分析主要是通過數(shù)據(jù)流程圖來描述的。其具體的步驟是:按照業(yè)務流程圖得出業(yè)務流程的順序,把了解到數(shù)據(jù)的流向和處理的過程,繪制成完整的數(shù)據(jù)流程圖?;贘AVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第10頁。就此網(wǎng)站系統(tǒng)來說,后臺管理員可以把手機的各種信息錄入數(shù)據(jù)庫,同時允許修改和更新各種信息,對用戶的刪除和用戶級別的修改,訂單的查看和刪除;其他會員用戶可以錄入注冊信息,提交登錄信息、查看手機信息和個人信息以及其他信息?;贘AVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第10頁。管理員驗證手機管理管理員驗證手機管理訂單管理機品管理用戶賬戶管理成功失敗圖1后臺管理端流程圖管理員基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第11頁。圖2前臺用戶端流程圖基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第11頁。1.1用戶登錄1.2用戶注冊1.1用戶登錄1.2用戶注冊1.3用戶信息的修改與查詢用戶登錄信息用戶信息用戶信息D1用戶信息表用戶信息表用戶信息表用戶信息表圖3用戶信息管理數(shù)據(jù)流添加的機品信息添加的機品添加的機品信息添加的機品類別信息2.3機品明細添加2.4機品信息的修改D6機品類別信息表機品類別信息表機品明細機品信息D4機品信息表機品的一般信息表機品明細表機品信息表2.2機品類別的添加圖4商品管理數(shù)據(jù)流2.1機品信息的添加基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第12頁。后臺訂單管理數(shù)據(jù)流圖,如圖5所示:基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第12頁。2.1訂單的確認2.2訂單的查詢2.3訂單的發(fā)送確認訂單信息待確認訂單信息訂單信息待發(fā)送訂單信息發(fā)送訂單信息D5訂單信息表訂單信息表2.1訂單的確認2.2訂單的查詢2.3訂單的發(fā)送確認訂單信息待確認訂單信息訂單信息待發(fā)送訂單信息發(fā)送訂單信息D5訂單信息表訂單信息表訂單信息表訂單信息表圖5后臺訂單管理數(shù)據(jù)流3.1系統(tǒng)總體功能結構通過前面對需求分析和實際情況的了解,得出網(wǎng)上手機商城的總體功能結構:其中前臺用戶端包括手機信息瀏覽,購物車和用戶信息管理三個模塊;后臺管理端包括手機商品管理,訂單管理,用戶管理三個模塊。系統(tǒng)主要模塊及其功能如下:A用戶信息管理:此模塊用于對賬戶信息的各種相關操作,如用戶的注冊,登錄等。B手機種類信息及相關信息瀏覽:主要包括手機具體內(nèi)容、分類列表,特價專區(qū)等內(nèi)容的查看。C購物車模塊:基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第13頁。將手機放入購物車,商品取消和購買,,查看購物車,修改手機數(shù)量,全部刪去購物車中的商品?;贘AVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第13頁。D訂單處理:用戶查閱訂單,生成新的訂單,查看訂單列表和詳細內(nèi)容以及訂單的確認。E后臺用戶管理:查看用戶信息,刪除用戶。F手機商品管理:基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第14頁。網(wǎng)上手機商城后臺管理端基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第14頁。網(wǎng)上手機商城后臺管理端訂單管理手機商品管理后臺用戶管理前臺用戶端購物車用戶信息管理手機信息瀏覽訂單的查看訂單的確認與發(fā)送手機類別的管理手機的添加與更新用戶的查看和刪除訂單的生成與查看手機類別的查看活動信息的查看手機詳情的查看用戶登錄用戶注冊用戶信息的查看與修改用戶級別的修改圖6系統(tǒng)功能結構圖3.2系統(tǒng)數(shù)據(jù)庫模型設計3.2.1系統(tǒng)概念結構設計——E-R圖基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第15頁。E-R方法是“實體-聯(lián)系方法”(Entity-RelationshipApproach)的簡稱。是一種描述概念結構模型的方法。具體方法是用矩形表示實體;用橢圓表示屬性,并用直線將兩者連接起來;用菱形表示實體和實體之間的聯(lián)系,并用直線將有關實體型連接起來,基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第15頁。用戶ID訂單號用戶ID訂單號編號ID管理員ID時間時間商品ID用戶商品瀏覽管理包含包含類型訂單處理開出管理員管理………………mnmmnm1nnmmnkk………………1圖圖7系統(tǒng)結構E-R圖具體屬性如下:用戶:會員ID,會員名,真實姓名,登錄密碼,會員性別,電話號碼,E-mail,具體住址,郵政編碼,用戶級別。(管理員屬性同上。)手機:產(chǎn)品ID,所屬種類,手機型號,手機簡介,活動與否,正常單價,活動單價,手機圖片,庫存數(shù)量,郵費。基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第16頁。訂單:訂單號,用戶ID,訂單時間,用戶真實姓名,具體地址,郵政編碼,商品總價?;贘AVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第16頁。訂單包含手機聯(lián)系屬性:數(shù)量,單項價格,總價。管理員信息:編號,姓名,密碼,權限。手機商品包含聯(lián)系屬性:數(shù)量。管理員處理訂單屬性:訂單確認人,確認時間。3.2.2系統(tǒng)邏輯結構設計——關系模型根據(jù)數(shù)據(jù)庫原理的相關規(guī)范可以做以下處理:根據(jù)相關原則規(guī)范從E-R圖向關系模型進行轉換。由于普通用戶和管理員的關系模型除了在權限不同,其他屬性全部一樣,所以可以將這兩種關系模型看成是一種,只需加入一個級別段將兩者進行區(qū)分就可以了。瀏覽關系模式和此網(wǎng)站系統(tǒng)其它功能要求關系不大,因此可以忽略。由于手機分類的關系模式在系統(tǒng)中要經(jīng)常調用,故將其作為一個單獨的關系模式。通過上面的分析,可以得出以下的關系模式:用戶(會員ID,會員名,登錄密碼,會員性別,用戶電話,E-mail,具體住址,郵政編碼,真實姓名,用戶級別)手機商品(商品ID,所屬種類,手機型號,手機簡介,是否活動,正常單價,活動單價,產(chǎn)品照片,備忘)基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第17頁。訂單(訂單號,用戶ID,訂單時間,用戶真實姓名,具體住址,聯(lián)系電話,產(chǎn)品總價)基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第17頁。3.2.3數(shù)據(jù)庫邏輯結構設計——關系表根據(jù)以上關系模型可以得出相應的關系表,關系表如表1:表1關系表編號名稱說明表1users用戶信息表表2products商品信息表表3orders訂單列表表4orderdetail訂單詳情表3.2.4數(shù)據(jù)表詳細說明基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第18頁。用戶表(users)主要記錄用戶(管理員和普通用戶)的相關信息,具體情況如表2:基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第18頁。表2用戶信息表字段名數(shù)據(jù)類型是否為空描述說明useridint否編號,主鍵namevarchar否注冊名Sexvarchar否性別birthdayvarchar否出生日期passwordvarchar否密碼telephonevarchar否電話addressvarchar否地址emailvarchar否郵箱gradevarchar是級別truenamevarchar否真是姓名基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第19頁。商品信息表(products)主要記錄手機的具體信息,具體情況如表3:基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第19頁。表3手機信息表字段名數(shù)據(jù)類型是否為空描述說明itermidint否項目編號productidvatchar否產(chǎn)品編號productnamevarchar否產(chǎn)品名稱productpicefloat是商品價格countint是庫存數(shù)量activityvarchar是是否活動商品activepricefloat是活動商品的價格kindvarchar是商品類別photovarchar是圖片informationvarchar是商品信息yunfeifloat是運費基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第20頁。訂單表(orders)主要記錄每筆訂單的相關信息,如表4:基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第20頁。表4訂單表字段名數(shù)據(jù)類型是否為空描述說明orderidint否訂單編號useridint否用戶編號orderdatevarchar否訂單生成時間paymodevarchar否支付方式ispayedvarchar否是否支付totalpricefloat是訂單總價addressvarchar否訂貨地址基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第21頁。訂單明細表(orderdetail)記錄訂單所選商品編號,數(shù)量等詳細信息。如表5所示:基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第21頁。表5訂單明細表字段名數(shù)據(jù)類型是否為空描述說明orderidint否訂單編號goodidvarchar是商品編號numint是商品數(shù)量pricefloat是商品單價4詳細設計與系統(tǒng)實現(xiàn)4.1系統(tǒng)詳細設計總體概述此系統(tǒng)的開發(fā)采用了現(xiàn)在比較流行的MVC開發(fā)模式,MVC是model,view,controller三個單詞的縮寫,這種開發(fā)模式將整個系統(tǒng)分為了三個大類,數(shù)據(jù)模型、用戶界面和控制器,其中數(shù)據(jù)模型(model)用java編寫,用于實現(xiàn)系統(tǒng)中的數(shù)據(jù)邏輯,包含了所有的JavaBean和方法;用戶界面(view)用jsp編寫,用于與用戶的交互,包含了用戶能看到的所有頁面信息,也可以理解為view就是由無數(shù)個頁面組成的;控制器(controller)是model和view之間溝通的橋梁,可以根據(jù)用戶的不同請求來跳轉到相應的界面,相當于公司中的領導階層,接收view中提交上來的信息,然后交給model中的方法將這些信息進行處理,接收處理后的信息返回給頁面或者存入數(shù)據(jù)庫。這種設計模式實現(xiàn)了業(yè)務層和視圖層的分離,使網(wǎng)站能更好的進行維護與升級,并且有低耦合,高重用性,較低的生命周期成本,可維護性等優(yōu)點,下面就圍繞這種開發(fā)模式對本網(wǎng)站設計進行分模塊的詳細介紹。4.2數(shù)據(jù)庫的操作的JavaBean設計基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第22頁。作為一個公共類,數(shù)據(jù)庫操作的JavaBean一般包括數(shù)據(jù)庫的鏈接getConnection、執(zhí)行executeQuery、更新操作的執(zhí)行executeUpdate、連接的關閉close方法。下面是數(shù)據(jù)庫操作JavaBean的具體信息?;贘AVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第22頁。使用JDBC訪問數(shù)據(jù)庫:Java應用程序DBMSJDBCAPIJDBC驅動程序管理器JDBC驅動程序APIJava應用程序DBMSJDBCAPIJDBC驅動程序管理器JDBC驅動程序APIJDBC網(wǎng)絡驅動程序JDBC-ODBC橋驅動程序圖8Java應用程序訪問數(shù)據(jù)庫的過程基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第23頁。在connDB中使用getConnection()方法建立與數(shù)據(jù)庫的連接。首先是加載數(shù)據(jù)庫驅動程序:Class.forName("com.mysql.jdbc.Driver");用到java.lang包中的類Class,調用Class類中的方法forName()方法來獲取MySQL數(shù)據(jù)庫連接,DriverManager.getConnection("jdbc:mysql://localhost:3306/Database","root","142857");第一個參數(shù)是連接數(shù)據(jù)庫URL,第二,三個參數(shù)為帳戶名和密碼.最后調用Statement的executeQuery(),executeUpdate()或execute()方法完成對數(shù)據(jù)庫的訪問?;贘AVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第23頁。connDB類的成員及說明如表6:表6connDB類成員表成員名返回值類別作用域功能connConnectionpublic記錄數(shù)據(jù)庫連接stStatementpublic向數(shù)據(jù)庫發(fā)送SQL語句rsResultSetpublic裝載查詢結果getConnection()Connectionpublicstatic建立數(shù)據(jù)庫連接executeQuery(Stringsql)ResultSetpublic進行查詢操作executeUpdate(Stringsql)intpublic更新操作,返回更新行數(shù)close()voidpublic關閉數(shù)據(jù)庫連接4.3用戶主界面設計基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第24頁。系統(tǒng)的用戶主界面是用戶了解商城的首要窗口,其中必須包括商城中商品的主要信息和相關入口。用戶在首頁可以進行注冊成為會員,登錄后可以進行購機等相關操作。用戶還可以選擇相應的菜單選項進行選購手機,手機詳細信息的查看,不同分類的手機信息瀏覽,還有常見問題,相關聯(lián)系方式?;贘AVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第24頁。主界面的構成:最上面為head.jsp,包含頭部的主要信息,比如用戶登錄狀態(tài),商城logo,搜索框,導航欄的信息;左邊的為left.jsp,包含用戶登錄注冊入口和新品上市,分別是用戶登錄和顯示本商城最新上市商品的地方;右邊是right.jsp,包含一個flash和活動專區(qū),flash顯示了本店的特色商品和一些最新活動信息,活動專區(qū)則提供了本店正在促銷和降價的商品,主界面最下面是tail.jsp,用來聲明版權。基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第25頁。在系統(tǒng)主界面最上面顯示用戶的登錄狀態(tài),如果用戶未登錄就有用戶未登錄的提示,如果用戶已經(jīng)登錄則顯示登錄用戶的用戶名和安全退出的信息,用戶名是一個超鏈接,通過點擊用戶名則完成從主界面到用戶中心的跳轉,跳轉的時候后臺會根據(jù)登錄用戶的級別(是否為管理員)跳轉到不同級別的個人中心頁面,導航欄通過超鏈接實現(xiàn)分類信息的參數(shù)傳遞,通過后臺程序的運行從數(shù)據(jù)庫中提取相應的列表,從而實現(xiàn)到分類信息列表的跳轉。左邊的登錄和注冊入口在未登錄的時候顯示的是登錄和注冊窗口,用戶登陸以后則以一張圖片替換,新品上市和活動專區(qū)則與數(shù)據(jù)庫相連,根據(jù)數(shù)據(jù)庫中的信息動態(tài)的顯示相關商品的信息。主界面如圖9所示:基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第25頁。圖9主界面4.4用戶信息管理模塊的設計4.4.1會員登錄模塊設計基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第26頁。此模塊的主要功能是對用戶名和密碼進行驗證,只有合法的用戶才能使用本系統(tǒng)購買手機。如果不是本網(wǎng)站的會員必須先進行注冊才能購買此網(wǎng)站的商品。在首頁的登錄窗口中有一個用戶登錄菜單。用戶填寫的所有信息都由Form表單使用post方法提交給服務器。服務器通過getParameter函數(shù)獲得Form表單提交的信息,通過提交的用戶名取出數(shù)據(jù)庫中的密碼,將取出的密碼與用戶提交的密碼進行比對,如果一致則合法,并不是直接通過數(shù)據(jù)庫語言與數(shù)據(jù)庫中的密碼匹配,這樣做的好處是可以有效的防治SQL漏洞。在用戶登錄后,將用戶的所有信息通過setAttribute函數(shù)保存在session中,方便其它界面使用隨時使用對象中的用戶信息。此外,該界面還提供出錯處理,如用戶登錄時用戶信息填寫的格式不正確或字符不合法,都會給用戶做出相應的錯誤提示,直到輸入信息合法才能提交。本網(wǎng)站的所有用戶(普通會員與管理員)都是通過此登錄窗口進行登錄,只需要更具用戶的級別實現(xiàn)頁面的選擇就可以了。在此界面中還添加了一個用戶注冊的按鈕,用以幫助第一次使用該系統(tǒng)的人通過注冊而成為本網(wǎng)站的會員?;贘AVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第26頁。在頁面上有一個安全退出的選項,是退出本網(wǎng)站的出口,當退出時把網(wǎng)頁中的session對象清空,登錄狀態(tài)就變?yōu)橛脩粑吹卿浀奶崾?。這樣做的原因有兩個:首先就是安全性,如果沒有安全退出,下一個用戶很可能會用該沒有過期的session對象;此外,假如大多數(shù)人都不退出登錄,那么session中無用的對象在過期之前就會一直占用著系統(tǒng)資源,從而造成網(wǎng)絡資源的浪費?;贘AVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第27頁。登錄窗口如圖10,登錄流程如圖11:基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第27頁。主界面登陸界面主界面登陸界面輸入用戶名和密碼表單是否提交用戶名是否存在密碼是否正確用戶類別管理員界面會員界面退出管理員會員YNYNN圖11用戶登錄流程圖4.4.2會員注冊模塊的設計此網(wǎng)站規(guī)定只有會員才有購買資格,生成訂單。游客只能進行手機商品的瀏覽和手機詳情查看的操作。在首頁的登錄窗口有一個注冊的按鈕,用戶通過此按鈕可以進入注冊頁面,也可以先將商品加入購物車,購買的時候會有提示進入注冊頁面?;贘AVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第28頁。此模塊中用到了用戶信息Bean(userbean)用來傳遞form表單提交的注冊信息,后臺通過reguest對象的gerParameter方法接收表單提交的信息,調用相關函數(shù)將這些信息存入數(shù)據(jù)庫,其中還有異常的處理,比如數(shù)據(jù)庫中已經(jīng)存在相應的用戶名,兩次輸入的密碼是否一致等情況也都由這些相關函數(shù)進行判斷和處理。注冊用戶的代碼如下:基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第28頁。publicbooleanaddUser(Stringusername,Stringpassword,Stringsex,Stringbirthday,Stringemail,Stringtruename,Stringaddress,Stringtelephone){ booleanb=true; try{ ct=newConnDB().getconnection(); ps=ct.prepareStatement("insertintousers(name,password,sex,birthday,email,truename,address,telephone)values(?,?,?,?,?,?,?,?)"); ps.setString(1,username); ps.setString(2,password); ps.setString(3,sex); ps.setString(4,birthday); ps.setString(5,email);ps.setString(6,truename); ps.setString(7,address); ps.setString(8,telephone); ps.execute();基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第29頁。 }catch(Exceptione基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第29頁。 e.printStackTrace(); b=false; }finally{this.close(); }returnb;}注冊成功后,用戶就可以用自己注冊的賬戶進行商品的購買和對自己信息的修改等操作,當然注冊成功后會自動登錄,將用戶信息的bean放入session中,以便用戶在本網(wǎng)站繼續(xù)其他的操作。用戶注冊界面如圖12:圖12用戶注冊界面4.4.3用戶信息的查看與修改模塊的設計基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第30頁。用戶在這里可以查看和修改自己信息,更改密碼。如果是系統(tǒng)管理員,還可以查看其他用戶的信息,級別的修改,對不合法用戶進行刪除等操作?;贘AVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第30頁。在用戶信息的查看與修改界面和注冊界面幾乎完全一樣,只不過注冊的會員名是不可以修改的,其他的信息都可以根據(jù)用戶的需要(如工作、住址、電話的變更)進行修改,具體修改的代碼如下:publicbooleanupdateByUsername(Stringusername,Stringtruename,Stringaddress,Stringtelephone,Stringemail){booleanb=true; try{ ct=newConnDB().getconnection(); ps=ct.prepareStatement("updateuserssettelephone=?,address=?,email=?,truename=?wherename=?"); ps.setString(1,telephone); ps.setString(2,address); ps.setString(3,email); ps.setString(4,truename); ps.setString(5,username); ps.execute(); }catch(Exceptione){ e.printStackTrace();b=false; }finally{ this.close(); }基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第31頁。returnb;基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第31頁。}信息修改后后臺程序會返回一個布爾量,如果為真則修改成功,反正則拋出異常,根據(jù)不同的返回值選擇跳回到哪個頁面。4.5購物車模塊和訂單模塊的設計該模塊主要包括添加手機,刪除手機,改變手機數(shù)量,清空購物車和購物車信息查看的功能,是實現(xiàn)購物的關鍵部分。訂單處理是根據(jù)用戶購物車內(nèi)的信息和用戶的個人信息生成訂單和訂單的查看功能。由于這兩個模塊是聯(lián)系在一起的,所以放在一起說明。當用戶將商品添加到購物車后提交,由系統(tǒng)自動生成訂單號并存入數(shù)據(jù)庫供用戶隨時查看。購物車界面如圖13所示,訂單界面如圖14:圖13購物車界面基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第32頁。圖14訂單界面基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第32頁。4.5.1購物車添加商品的設計用戶在手機詳細信息頁面選擇加入購物車,就可以跳轉到購物車信息界面如圖13。會員只有登錄后才可以進行繼續(xù)購買。在本模塊后臺購物車的設計采用了HashMap方法,這個方法的好處是可以非常方便的對里面的對象進行增加、修改和刪除,甚至是清空購物車,然后將其中的對象用ArrayList方法保存到session中,用戶可以隨時的從session中得到購物車中的商品信息,也可以隨時的修改數(shù)量和刪除。具體代碼如下:publicclassMyShoppingCarBO{HashMap<String,String>hm=newHashMap<String,String>();privateResultSetrs=null;privateConnectionct=null;privatePreparedStatementps=null;privatefloatallprice=0.0f;publicfloatgetallprice(){ returnthis.allprice;}publicStringgetnumbygoodid(Stringgoodid){ return(String)hm.get(goodid);}publicvoidaddgood(Stringgoodid,Stringgoodnum){基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第33頁。 hm.put(goodid,goodnum);基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第33頁。}publicvoiddeletgood(Stringgoodid){ hm.remove(goodid);}publicvoidcleangood(){ hm.clear();}publicvoidupdategood(Stringgoodid,Stringnewnum){ hm.put(goodid,newnum);}}4.5.2訂單的提交設計基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第34頁。當用戶選擇完商品后,選擇提交,這時會有一個訂單詳情的顯示,供用戶對購買信息的核對,如果沒有問題則單擊完成訂購按鈕生成新的訂單并保存到數(shù)據(jù)庫中。這時系統(tǒng)需獲取當前時間來決定訂單的生成時間,還需查找出數(shù)據(jù)庫中的訂單數(shù)量來決定當前訂單的訂單號,并將這次訂單包含的所有信息存入數(shù)據(jù)庫中,如果拋出異常應該返回錯誤信息,反之則跳回下單成功界面并顯示訂單信息?;贘AVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第34頁。4.6后臺管理模塊的設計4.6.1后臺用戶管理模塊設計后臺用戶管理模塊主要是實現(xiàn)管理員查看普通會員的信息,級別的修改和刪除操作。在次模塊中分頁顯示用戶列表。用戶管理頁面如圖15:圖15用戶管理界面刪除用戶的代碼如下:publicbooleandeleteUserByUserid(longuserid){booleanb=false;try{ct=newConnDB().getconnection();ps=ct.prepareStatement("deletefromuserswhereuserid=?");ps.setLong(1,userid);inta=ps.executeUpdate();if(a==1){b=true;基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第35頁。}基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第35頁。}catch(Exceptione){e.printStackTrace();b=false;}finally{this.close();}returnb;}分頁顯示所有用戶信息代碼:publicArrayList<UserBean>getUserBeanByPage(intpagesize,intpagenow,Stringtype){ArrayList<UserBean>al=newArrayList<UserBean>();try{ct=newConnDB().getconnection();if(type.equals("1")){ps=ct.prepareStatement("select*fromuserswheregrade='1'limit"+(pagenow-1)*pagesize+","+pagesize);}elseif(type.equals("all")){ps=ct.prepareStatement("select*fromuserslimit"+(pagenow-1)*pagesize+","+pagesize);基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第36頁。}基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第36頁。rs=ps.executeQuery();while(rs.next()){UserBeanub=newUserBean();ub.setUserid(rs.getLong(1));ub.setName(rs.getString(2));ub.setSex(rs.getString(3));ub.setBirthday(rs.getString(4));ub.setPassword(rs.getString(5));ub.setTelephone(rs.getString(6));ub.setAddress(rs.getString(7));ub.setEmail(rs.getString(8));ub.setGrade(rs.getString(9));ub.setTruename(rs.getString(10));al.add(ub);}}catch(Exceptione){e.printStackTrace();}finally{this.close();}returnal;基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第37頁。}基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第37頁。4.6.2后臺手機管理模塊設計管理員可以對手機信息進行查看、添加、刪除和修改工作。此模塊便于管理員及時的更新手機的相關信息,為用戶提供最新的手機信息動態(tài)。代碼與用戶管理模塊的代碼相似,這里就不再贅述,手機管理頁面如圖16:圖16手機管理界面5軟件測試5.1軟件測試的目的開發(fā)一個軟件是為了給人們提供方便,實現(xiàn)功能的同時也要避免錯誤,但這是不可能實現(xiàn)的,只能采用各種方法如:方法分析、設計軟件等盡可能的減少錯誤。另外人們在程序編寫的時候還會引進很多錯誤。如果得不到正確的處理,在最終投入使用的時候終究還是會暴露出來,因此,軟件測試是一個必要的環(huán)節(jié)。軟件測試是軟件開發(fā)的后期階段,在編寫完成后根據(jù)需求分析、設計規(guī)格的最終審查,是驗證軟件是否能正常使用的關鍵?;贘AVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第38頁。測試的目標用最少的成本發(fā)現(xiàn)軟件中存在的錯誤和缺陷。軟件經(jīng)過成功的測試,就會發(fā)現(xiàn)還存在的相關錯誤,還可以證明開發(fā)的軟件是否能符合客戶的功能需求。基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第38頁。5.2軟件測試過程本網(wǎng)站主要采用的是黑盒測試,對于系統(tǒng)所有的模塊均涉及到黑盒測試。對所有的功能都設計兩個用例,即正確的符合規(guī)范的數(shù)據(jù)和不合法的數(shù)據(jù),看是否都能實現(xiàn)頁面的正確跳轉和程序的正確運行,使程序無論是正確的還是錯誤的數(shù)據(jù)都能得到正確的處理。5.3軟件測試結論5.3.1軟件能力經(jīng)過測試證明,本系統(tǒng)在操作上和輸入數(shù)據(jù)的驗證上,比較全面,達到了預期設計系統(tǒng)的功能。能夠比較全面的實現(xiàn)網(wǎng)上手機商城的各項基本功能。5.3.2缺陷和限制本系統(tǒng)的開發(fā)旨在提高顧客購買商品的效率,以及方便客戶和商家。提高人們的生活水平,也使商家能對商店更好的管理。但由于開發(fā)者能力有限,致使網(wǎng)站還存在諸多不足與缺陷,因此本網(wǎng)站還可以從以下幾個方面進行改進?;贘AVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第39頁。(1)基于JAVA語言的《農(nóng)產(chǎn)品銷售系統(tǒng)》設計-畢業(yè)設計論文全文共43頁,當前為第39頁。(2)添加在線交流模塊;(3)添加留言板;(4)系統(tǒng)功能并非完全實現(xiàn),在后期逐步完善;(5)界面上還不夠完美;5.3.3測試結論軟件已經(jīng)基本運行實現(xiàn)了設計的各項功能,可以投入使用。6結束語到這里,本次畢業(yè)設計已經(jīng)接近尾聲,在此期間,我也學到了很多。在前面的三年半時間內(nèi)我學習了很多的課程及編程語言,從最初始的C語言到稍微深入一點的C++,JAVA,數(shù)據(jù)庫系統(tǒng)概論等等,雖然通過學習對這些課程有所了解和掌握,但也只是對理論知識的理解階段,對知識的掌握還不夠全面和熟練不能進行的編程開發(fā),更不用說真正應用于實踐設計開發(fā),而且并不能真正獨立的開發(fā)出一個完整的應用于實際的系統(tǒng)。通過這次的畢業(yè)設計,又更加深入的學習了JAVA和JSP技術以及很多關于電子商務方面的知識,在整個畢業(yè)設計的過程中,遇到了好多的困難和自己無法解決的問題,主要是自己的

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論