版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
PAGEI本科畢業(yè)論文(設計)題目:基于Java的網(wǎng)上購物系統(tǒng)設計與實現(xiàn)
基于Java的網(wǎng)上購物系統(tǒng)設計與實現(xiàn)摘要:隨著人們生活方式和消費觀念的改變,網(wǎng)上購物憑借其簡單、快捷等特點已被越來越多的人所接受。本論文主要論述的是基于Java的網(wǎng)上購物系統(tǒng)設計與實現(xiàn)。該系統(tǒng)是針對人們網(wǎng)上購物的需求設計與實現(xiàn)的。主要功能是把商品的交易流程納入信息化管理。系統(tǒng)可分為前后臺兩部分,前臺主要實現(xiàn)登錄、注冊、搜索、購物車和支付等操作;后臺主要實現(xiàn)會員管理、商品管理、訂單管理和公告管理等。整個過程以MyEclipse為開發(fā)工具,在MySQL的支持下實現(xiàn)。系統(tǒng)界面采用JSP、CSS、JS、Ajax等技術(shù),使得網(wǎng)上購物變得簡單、安全、快捷。關(guān)鍵詞:Java;MySQL;JSP 目錄1緒論 11.1課題的研究意義 11.2本論文的目的、內(nèi)容及作者的主要貢獻 12研究現(xiàn)狀及設計目標 12.1相近研究課題的特點及優(yōu)缺點分析 12.2現(xiàn)行研究存在的問題及解決辦法 22.3本課題要采用的相關(guān)技術(shù) 23要解決的幾個關(guān)鍵問題 33.1研究設計中要解決的問題 33.2具體實現(xiàn)中采用的關(guān)鍵技術(shù)及復雜性分析 64系統(tǒng)設計及結(jié)構(gòu) 74.1數(shù)據(jù)庫設計 74.2系統(tǒng)結(jié)構(gòu)圖 105系統(tǒng)實現(xiàn)技術(shù) 105.1分模塊詳述系統(tǒng)各部分的實現(xiàn)方法 105.2程序流程 166性能測試與分析 176.1測試實例(測試集)的研究與選擇 176.2測試環(huán)境 176.3性能分析 177結(jié)束語 17參考文獻 191緒論1.1課題的研究意義近年來,網(wǎng)絡技術(shù)迅猛發(fā)展,人類已經(jīng)進入了信息化社會。隨著人們消費觀念和生活方式的改變,網(wǎng)上購物憑借其簡單、快捷的特點逐漸融入了人們的生活中適應了當今社會快節(jié)奏地生活,使人們足不出戶便可以方便快捷輕松地選購自己喜歡的商品。本系統(tǒng)是一種具有交互功能的商業(yè)信息系統(tǒng),方便商家和用戶及時傳遞信息。為了利用Internet這個平臺,實現(xiàn)一種網(wǎng)上購物的方式,其目的是方便廣大網(wǎng)友購物,讓網(wǎng)友足不出戶就可以逛商城買商品,為此構(gòu)建了基于Java的網(wǎng)上購物系統(tǒng)。1.2本論文的目的、內(nèi)容及作者的主要貢獻1.論文的目的、內(nèi)容基于Java的網(wǎng)上購物系統(tǒng)是人們進行網(wǎng)上交易的重要工具,用來傳遞商品信息,同時也是可以管理商品和用戶的系統(tǒng)。本系統(tǒng)主要針對愛好網(wǎng)上購物的人群,利用網(wǎng)絡完成商品交易。本系統(tǒng)采用MVC設計模式,使用當前最流行的SSH框架進行開發(fā)。本系統(tǒng)可被簡單地劃分為前臺和后臺兩部分。前臺服務于用戶,為其提供了瀏覽、注冊、登錄、購物車、查看訂單等功能;后臺服務于管理員,其職責在于對網(wǎng)站的維護和管理,對商品信息進行增、刪、查、改等。也可以查看訂單信息,以便及時地出貨和退貨。管理員同時還能對已注冊用戶信息進行管理。2.主要貢獻對銷售者而言,網(wǎng)上購物系統(tǒng)具有很大的優(yōu)勢,它可以不受時間和地理條件的制約,消費者可以在任何時間、任何地點查看商品并進行購買;不需要支付使用傳統(tǒng)的場地所產(chǎn)生的種種費用,例如房租、水電費、店面裝潢和各種管理費用等;也不需要承擔實體店經(jīng)營可能帶來的風險,比如遭受盜竊、人為破壞、自然災害等。對消費者而言,網(wǎng)上購物系統(tǒng)也為其提供了大量便利,沒有了“營業(yè)時間”的制約。網(wǎng)上支付的方式,使得足不出戶也可以看盡各地商品,省去了不必要的時間和金錢,實現(xiàn)了消費者最小付出和最大回報的愿望。相對與傳統(tǒng)的交易模式,網(wǎng)上購物模式的發(fā)展比較穩(wěn)定,它降低了銷售者的運行成本的同時,也便利了消費者。在購物交易中達到了雙贏[1]。2研究現(xiàn)狀及設計目標2.1相近研究課題的特點及優(yōu)缺點分析實體商品搬上虛擬網(wǎng)絡已成為社會發(fā)展的必然。它充分發(fā)揮了計算機網(wǎng)絡技術(shù)的優(yōu)勢,把傳統(tǒng)的商店直接“搬”回家,利用Internet直接購買自己需要的商品或者自己需要的服務。相比于傳統(tǒng)購物模式少了言語交流而有了更多的填單與確認過程,讓人稍感不便外。總的來說,不受時間、地域限制、便捷、安全、省時省力等優(yōu)點還是為買賣雙方帶來了不少好處,在新經(jīng)濟時期達到“雙贏”效果的理想模式。隨著計算機技術(shù)的日趨成熟,更加成熟完善的網(wǎng)上購物系統(tǒng)也將應運而生[2]。2.2現(xiàn)行研究存在的問題及解決辦法網(wǎng)上購物系統(tǒng)是比較常見而求被廣泛應用的系統(tǒng),本系統(tǒng)的開發(fā)主要是購物車功能、訂單功能和支付的實現(xiàn),傳統(tǒng)的購物模式,最令人煩惱的問題就是——商品的進貨、出貨、交易以及顧客對其所購商品不滿而引發(fā)的退貨問題等等?,F(xiàn)在市場上類似流行的網(wǎng)站或平臺有很多,例如:卓越,當當,淘寶網(wǎng),京東商城等。這些網(wǎng)站都以比較大型的數(shù)據(jù)庫例如Oracle作為基礎(chǔ),用來儲存及處理大量信息。建立在此基礎(chǔ)之上,讓賣家在處理上述問題時帶來了很大的便利。網(wǎng)上購物相比于傳統(tǒng)購物模式還有一個更加明顯的問題就是顧客信息的安全問題,這些網(wǎng)站大多數(shù)在解決這個問題是采取的是登錄和支付時,對用戶的輸入進行驗證,通過正則表達式并且限制了輸入次數(shù)防止惡意的SQL注入強制破解用戶密碼,保障顧客信息安全。2.3本課題要采用的相關(guān)技術(shù)1.JSPJSP(javaserverpage)是由SunMicrosystems公司倡導,多家公司共同參與合作于1999年建立的一種動態(tài)技術(shù)標準。JSP是新一代的動態(tài)內(nèi)容編程技術(shù),它繼承Java技術(shù)的“一次編寫,隨處運行”的特性,將開發(fā)人員的開發(fā)和維護與平臺相分離[3]。由HTML,DHTML和XML等技術(shù),組成了信息豐富動態(tài)的Web頁面。它使得Web開發(fā)人員搭建網(wǎng)絡平臺變得簡單快捷,建立了功能強大的Web網(wǎng)站。JSP可以把用戶界面從內(nèi)容層次中分離出來,使得Web開發(fā)人員修改整體布局的時候避開了對底層動態(tài)內(nèi)容的修改。插入JSP的Java程序段可以操作當服務器上的一個JSP頁面被第一次請求執(zhí)行時,服務器上的JSP引擎首先將JSP頁面文件轉(zhuǎn)譯成一個Java文件,再將這個Java文件編譯生成字節(jié)碼文件,然后通過執(zhí)行字節(jié)碼文件響應客戶的請求,而當這個JSP再次被請求執(zhí)行時,JSP引擎將直接執(zhí)行這個字節(jié)碼文件來響應客戶,這也是JSP比ASP速度快的一個原因。另外,JSP又在其它許多方面做了改進,具有動態(tài)頁面與靜態(tài)頁面相分離,能夠脫離硬件平臺的束縛,以及編譯后運行等優(yōu)點,完全克服了ASP的腳本級執(zhí)行的缺點。2.MySQL前MySQL是一個開放源碼的小型關(guān)聯(lián)式數(shù)據(jù)庫,由瑞典MySQLAB公司研發(fā)并實現(xiàn)[4]。目前MySQL已被大量地應用到Internet上的各式網(wǎng)站中。憑借其體積小、速度快、總體擁有成本低開放源碼等特點,被許多中小型網(wǎng)站所采納,將其作為網(wǎng)站數(shù)據(jù)庫[5]。與其他的大型數(shù)據(jù)庫例如Oracle、SQLServer等相比,MySQL自有它的一些不足,比如說規(guī)模較小、功能有限等。但是這些不足并不能減少它受歡迎的程度。MySQL提供的功能完全能夠滿足個人或者中小型企業(yè)的使用,最重要的一點MySQL是開放源碼軟件,因此很大程度上降低總體運行成本。(1)支持多線程,CPU資源得到充分利用。(2)SQL算法得到優(yōu)化,查詢速度明顯提高。(3)可以作為一個獨立的程序應用在客戶端和服務端環(huán)境中,也可以作為一個數(shù)據(jù)庫而鑲嵌到其他的軟件中。(4)支持多種語言,常見的編碼如中文的GB2312、BIG5,日文的Shift_JIS等。(5)數(shù)據(jù)庫連接途徑有TCP/IP、ODBC和JDBC等。(6)提供用于管理、檢查、優(yōu)化數(shù)據(jù)庫操作的管理工具。(7)支持大型的數(shù)據(jù)庫??梢酝瑫r處理擁有成千上萬條記錄。(8)支持多種存儲引擎。3要解決的幾個關(guān)鍵問題3.1研究設計中要解決的問題1.界面設計界面布局設計是本系統(tǒng)中的一個重要的環(huán)節(jié),一個網(wǎng)站如果能有一個整潔漂亮的界面,是必更容易被顧客接受。本系統(tǒng)采用B/S結(jié)構(gòu),即(Browse/Server),瀏覽器/服務器模式[6]。顧客只需在本機上安裝一個瀏覽器,就能和服務機進行數(shù)據(jù)交互。不需要安裝任何軟件,與C/S結(jié)構(gòu)相比,方便了不少。整體采用Java語言,并運用一些如JSP、HTML、CSS等網(wǎng)頁制作技術(shù)。界面友好、整潔,任何顧客都能快速地學會使用本系統(tǒng)。2.功能需求網(wǎng)上購物系統(tǒng)的功能模塊有很多,大體可被簡單地劃分為兩部分:前臺模塊和后臺模塊[7]。(1)前臺模塊:該模塊主要供顧客使用,包括登錄模塊、注冊模塊、搜索模塊、購物車模塊、支付模塊等。前臺模塊功能結(jié)構(gòu)圖如圖3.1所示。圖3.1前臺模塊結(jié)構(gòu)圖①登錄模塊本系統(tǒng)的登錄模塊提供網(wǎng)站用戶的登錄功能,包括用戶名和密碼的輸入,此模塊連接數(shù)據(jù)庫,點擊登錄按鈕,驗證核實之后進入系統(tǒng)主界面。②注冊模塊本系統(tǒng)的注冊模塊提供網(wǎng)站游客的注冊功能,輸入個人資料,注冊成為網(wǎng)站會員。包括用戶名、密碼、確認密碼、性別、年齡、電子郵箱、驗證碼、地址和聯(lián)系方式。本模塊采用Ajax驗證,各個輸入框都有限制條件,根據(jù)用戶輸入有不同的提醒。輸入無誤后點擊立即注冊按鈕,輸入信息寫入數(shù)據(jù)庫,操作者可成為網(wǎng)站用戶。③搜索模塊本模塊提供了兩種搜索功能。包括模糊搜索和條件搜索。模糊搜索即關(guān)鍵字搜索,用戶輸入自己想要商品的關(guān)鍵字,點擊搜索按鈕,進行搜索。條件搜索可以分為價格區(qū)間搜索和商品類型搜索。④購物車模塊購物車模塊相當于現(xiàn)實中的購物車,用于暫時存放用戶挑選的商品。可以顯示所選商品的價格、數(shù)量、小計和總計。模塊功能包括單件商品的增減及刪除,小計表示同類商品的價格,總計表示所選商品的總計價格。確認無誤后,點擊結(jié)算,便可生成訂單。⑤支付模塊本模塊提供了網(wǎng)上購物系統(tǒng)的支付功能。用戶接收商品,確認試用后,點擊支付,給予評價,完成此次交易的最后一步。(2)后臺模塊:該模塊主要供管理員使用,包括商品管理模塊、會員管理模塊、訂單管理模塊、公告模塊等。后臺模塊功能結(jié)構(gòu)圖如圖3.2所示。圖3.2后臺模塊結(jié)構(gòu)圖①商品管理模塊網(wǎng)上購物系統(tǒng)的商品管理模塊主要為管理員提供商品管理功能。管理員可修改商品信息,包括價格、庫存、上架以及下架。② 會員管理模塊會員管理模塊為管理員提供了管理網(wǎng)站會員的功能??梢苑峙渚W(wǎng)站會員一定權(quán)限,也可刪除會員。③ 訂單管理模塊此模塊的功能主要為訂單處理功能。管理員查看訂單信息,給用戶派送商品,等用戶支付之后,修改訂單狀態(tài),完成此次交易。④ 公告模塊公告模塊用來顯示網(wǎng)站的一些活動、獎勵、上架新品、特價商品以及下架通知等信息。3.數(shù)據(jù)庫的設計數(shù)據(jù)庫是所有信息類系統(tǒng)的基礎(chǔ)核心,它把系統(tǒng)中出現(xiàn)的大量數(shù)據(jù)按照一定的規(guī)則存儲起來,提供檢索數(shù)據(jù)的功能[8]。然而往往由于龐大的數(shù)據(jù)量,讓數(shù)據(jù)庫設計變得異常復雜。開發(fā)網(wǎng)上購物系統(tǒng),必然涉及到大量的商品和顧客信息的存儲問題,這時候就需要有數(shù)據(jù)庫的支持。一個好的數(shù)據(jù)庫設計,不僅能節(jié)省多余的存儲空間,還能有效的提升系統(tǒng)的運行效率?,F(xiàn)在主要存在的問題是如何解決數(shù)據(jù)的結(jié)構(gòu)化、數(shù)據(jù)共享性高、獨立性強和管理統(tǒng)一。3.2具體實現(xiàn)中采用的關(guān)鍵技術(shù)及復雜性分析 1.基于B/S的結(jié)構(gòu)模式B/S結(jié)構(gòu)(Browser/Server,瀏覽器/服務器模式),是Web興起后的一種新型的網(wǎng)絡結(jié)構(gòu)模式,Web瀏覽器是客戶端最常見的一種的應用軟件[9]。B/S模式解放了客戶端,它將系統(tǒng)的核心功能集中到服務器上,緩解了客戶端的壓力。用戶只需在客戶端上只要安裝一個瀏覽器,如IE、火狐等,服務器安裝Oracle、Informix、SQLServer一類的數(shù)據(jù)庫。用戶通過瀏覽器與數(shù)據(jù)庫進行數(shù)據(jù)信息的交互。B/S最大的優(yōu)點在于用戶只要擁有一臺能上網(wǎng)的電腦,不需要安裝任何軟件,就可以在任何時間、地點操作系統(tǒng)??蛻舨挥冒惭b、維護,系統(tǒng)的擴展性也得到了提高。近年來,Ajax技術(shù)的發(fā)展突飛猛進,使得基于B/S結(jié)構(gòu)的系統(tǒng)越來越多。建立在此之上的程序在客戶端就可以進行部分的驗證功能,這樣一來就減輕了服務端的負擔。局部的即時刷新功能,提高了交互性能。2.數(shù)據(jù)庫連接技術(shù)數(shù)據(jù)庫部分的難點在于它的連接,為此采用了JDBC,即JavaDataBaseConnectivity它是Java版本的ODBC。課題研究過程中,我們可以建立一個JDBC類,用來連接數(shù)據(jù)庫[10]。它的實現(xiàn)可以分為5個步驟:(1)注冊驅(qū)動,根據(jù)不同數(shù)據(jù)庫注冊不同的驅(qū)動 Class.forName("oracle.jdbc.driver.OracleDriver") (mysql)“com.mysql.jdbc.Driver"neworacle.jdbc.driver.OracleDriver();(2)通過驅(qū)動管理器獲得連接 Connectionconn=DriverManager.getConnection(url,用戶名,密碼) (oracle)url="jdbc:oracle:thin:@ip地址:1521:數(shù)據(jù)庫名(orcl)jdbc:oracle:thin:@88:1521:orcl (mysql)jdbc:mysql://ip地址:3306/數(shù)據(jù)庫名(database對象的名字)(3)通過連接(Connection)生成語句(Statement)對象 Statementstmt=conn.createStatement(); PreparedStatementpstmt=conn.prepareStatement(sql);(4)傳遞語句對象,并返回結(jié)果 Stringsql="select*fromemp"; ResultSetrs=stmt.executeQuery(sql); //ResultSetrs=prepareStmt.executeQuery(); intn=stmt.executeUpdate(sql); while(rs.next()){ }(5)釋放資源 rs.close(); stmt.close(); conn.close();4系統(tǒng)設計及結(jié)構(gòu)4.1數(shù)據(jù)庫設計1.數(shù)據(jù)庫表的設計(1)用戶信息表(User_id,User_name,Password,Real_name,Age,Gender,Address,Email,Is_Admin,Phone),其中User_id為關(guān)鍵字。該表用來存儲用戶id、用戶名、密碼、真實姓名、年齡、性別、地址、電子郵箱、是否為管理員和聯(lián)系方式。表的結(jié)構(gòu)如表4-1所示。表4-1用戶信息表含義字段類型鍵標識用戶idUser_idIntPrimarykey用戶名User_nameVarchar密碼PasswordVarchar真實姓名Real_nameVarchar年齡AgeInt性別GenderVarchar地址AddressVarchar郵箱EmailVarchar是否管理員Is_AdminVarcharDefault聯(lián)系方式PhoneVarchar(2)商品表(Product_id,Name,Kind_id,Price,Uptime,Downtime,Count,Month_sell,Pro_picture,Describe),其中Product_id為主鍵,Kind_id為外鍵。該表用來存儲商品id、商品名稱、種類id、商品單價、上架時間、下架時間、庫存量、月銷量、商品圖片和商品描述。表的結(jié)構(gòu)如下表4-2所示。表4-2商品信息表含義字段類型鍵標識商品idProduct_idIntPrimarykey商品名稱NameVarchar種類idKind_idIntForeignkey商品單價PriceDouble上架時間UptimeDate下架時間DowntimeDate庫存量CountInt月銷量Month_sellInt商品圖片Pro_pictureVarchar商品描述DescribeVarchar(3)商品種類表(Kind_id,F(xiàn)ather_id,Kind_name,Kind_grade),其中Kind_id為主鍵。該表用來存儲種類id、父種類id、種類名稱和種類等級。表的結(jié)構(gòu)如表4-3所示。表4-3商品種類表含義字段類型鍵標識種類idKind_idIntPrimarykey父種類idFather_idInt種類名稱Kind_nameVarchar種類等級Kind_gradeInt(4)訂單項表(Item_id,Order_id,Product_id,Product_count,User_id),其中Item_id為主鍵。該表存儲訂單項id、訂單id、商品id、商品數(shù)量、用戶id。表的結(jié)構(gòu)如表4-4所示。表4-4訂單項表含義字段類型鍵標識訂單項idItem_idIntPrimarykey訂單idOrder_idInt商品idKind_idInt商品數(shù)量Product_idInt用戶idUser_idInt(5)訂單表(Order_id,Pay_way,Deliver_way,Address,Receive_name,Postcode,Receive_phone,User_id,State,isPaid),其中Order_id是主鍵,User_id為外鍵。該表用來存儲訂單id、支付方式、送貨方式、送貨地址、收貨人姓名、收貨人聯(lián)系方式、郵政編碼、用戶id、訂單狀態(tài)、是否付款。表結(jié)構(gòu)如表4-5所示。表4-5訂單表含義字段類型鍵標識訂單idOrder_idIntPrimarykey支付方式Pay_wayVarchar送貨方式Deliver_wayVarchar送貨地址AddressVarchar收貨人姓名Receive_nameVarchar收貨人聯(lián)系方式Receive_phoneVarchar郵政編碼PostcodeVarchar用戶idUser_idIntForeignkey訂單狀態(tài)StateVarcharDefault是否付款isPaidVarcahrDefault2.數(shù)據(jù)庫表的關(guān)系圖根據(jù)需求分析和上述的數(shù)據(jù)庫設計,我們得出數(shù)據(jù)庫表的E-R圖,如下圖4.1所示。圖4.1數(shù)據(jù)庫表的關(guān)系圖4.2系統(tǒng)結(jié)構(gòu)圖結(jié)構(gòu)圖以模塊的關(guān)系為線索,用自上而下的連線表示調(diào)用關(guān)系并注明參數(shù)傳遞的方向和內(nèi)容。根據(jù)第三章節(jié)的功能分析,可以得出本系統(tǒng)總體結(jié)構(gòu)圖。如圖4.2所示。圖4.2網(wǎng)上購物系統(tǒng)總體模塊結(jié)構(gòu)圖5系統(tǒng)實現(xiàn)技術(shù)5.1分模塊詳述系統(tǒng)各部分的實現(xiàn)方法1.登錄經(jīng)過上述的各項步驟之后,基本上完成了一個網(wǎng)上購物系統(tǒng)的開發(fā)。本系統(tǒng)的登錄界面如下圖所示。輸入用戶名和密碼,單擊登錄按鈕,與數(shù)據(jù)庫的用戶信息表進行驗證,核實身份后進入系統(tǒng)主界面。登錄界面如圖5.1所示。圖5.1登錄界面對應的部分程序代碼為:@Overrideprotectedvoidservice(HttpServletRequestrequest,HttpServletResponseresponse) throwsServletException,IOException{request.setCharacterEncoding("utf-8");response.setContentType("text/html;charset=utf-8");Stringusername=request.getParameter("username");Stringpassword=request.getParameter("password");PrintWriterout=response.getWriter();try{ Useru=Userdao.getUser(username); if(u!=null){ if(u.getUser_password().equals(password)){ request.getSession().setAttribute("user",u); response.sendRedirect("/dog_heaven/jsp/main.jsp"); }else{ out.println("<script>alert('密碼錯誤');window.history.go(-1)</script>"); } }else{ out.println("<script>alert('用戶名不存在');window.history.go(-1)</script>"); } }catch(SQLExceptione){ e.printStackTrace(); }}2.注冊如果用戶還不是本網(wǎng)站會員,就只能瀏覽商品,沒有購物車功能,也不購買商品。這時就需要注冊會員。本系統(tǒng)注冊界面如下圖所示。本界面采用Ajax驗證,即時更新驗證輸入的信息。完成個人信息的填寫后,單擊立即注冊按鈕,即可成為本網(wǎng)站會員。注冊界面如圖5.2所示。圖5.2注冊界面3.搜索本系統(tǒng)搜索功能如下圖所示,大體提供了兩種搜索功能。第一種:關(guān)鍵字查找(模糊查找),會員輸入關(guān)鍵字,單擊搜索按鈕進行搜索;第二種:條件查找,具體可分為價格區(qū)間查找和商品類別查找。搜索界面如圖5.3所示。圖5.3搜索功能界面對應的部分程序代碼為://關(guān)鍵字查找@Overrideprivatevoidkeywords(HttpServletRequestrequest,HttpServletResponseresponse)throwsSQLException,IOException{Stringkey=request.getParameter("keywords");ArrayList<Dog>dogs=(ArrayList)Dogdao.findKeyWordsDog(key);PrintWriterout=response.getWriter(); out.println("<html>"); out.println("<head><title></title></head>"); out.println("<body>"); out.println("<divstyle=\"background-image:url('image/main/memu.jpg');height:600px;\">"); out.println("<tablealign=\"center\">"); if(dogs.size()==0){ out.println("<br><br><divalign=\"center\"><h1>沒有符合條件的商品</h1></div><br>"); out.println("<divalign=\"center\"><h2><ahref=\"/dog_heaven/jsp/main.jsp\">如有需要,請重新搜索</a></h2></div><br>"); return; }else{ out.println("<br><br><divalign=\"center\"><h1>商品如下</h1></div><br>"); out.println("<divalign=\"center\"><h2><ahref=\"/dog_heaven/jsp/main.jsp\">返回首頁</a></h2></div><br>"); for(inti=0;i<dogs.size();i++){ Dogd=dogs.get(i); if(i==0){ out.println("<tr>"); } if(i%4==0&&i!=0){ out.println("</tr>"); } out.println("<td>"); out.println("<tablewidth=\"200px\">"); out.println("<tr><tdcolspan=\"2\"><ahref=\"detailServlet?id="+d.getDog_id()+"\"><imgwidth=\"180px\";height=\"220px\";src=\"image/dog/"+d.getDog_picture()+"\"/></a></td></tr>"); out.println("<tr><tdcolspan=\"2\">"+d.getDog_describe()+"</td></tr>"); out.println("<tr><td><imgsrc=\"image/main/price.jpg\"/></td>"); out.println("<td>"+d.getDog_now_price()+"</td></tr>"); out.println("</table></td>"); } out.println("</div>"); out.println("</body>"); out.println("</html>"); out.flush(); out.close(); }4.購物車購物車模塊相當于現(xiàn)實中的購物車,用于暫時存放用戶挑選的商品。顧客可以選擇單件商品數(shù)量或者刪除商品。小計表示同類商品的價格,總計表示所選商品的總計價格。確認無誤后,點擊結(jié)算,生成訂單。購物車界面如圖5.4所示。圖5.4購物車界面對應的部分程序代碼為:privateArrayList<CartItem>printCartItem(PrintWriterout,ShoppingCartcart){ ArrayList<CartItem>items=cart.getCart(); CartItemitem=null; out.println("<tablewidth=\"500\"border=\"1\">"); out.println("<tr>"); out.println("<thwidth=\"100\">圖片</th>"); out.println("<thwidth=\"100\">價格</th>"); out.println("<thwidth=\"100\">數(shù)量</th>"); out.println("<thwidth=\"100\">小計</th>"); out.println("<thwidth=\"100\">操作</th>"); out.println("</tr>"); for(inti=0;i<items.size();i++){ item=items.get(i); out.println("<formaction=\"jsp/memu.jsp?price="+item.getPrice()+"&&number="+item.getQuantity()+"&&dogid="+item.getId()+"\">"); out.println("<tr>"); out.println("<td><imgwidth=\"100px\";height=\"100px\";src=\"image/dog/"+item.getPic()+"\"/></td>"); out.println("<tdalign=\"center\">"+item.getPrice()+"元</td>"); out.println("<tdalign=\"center\"><fontsize=\"5\">"+item.getQuantity()+"</font></td>"); out.println("<tdalign=\"center\">"+item.getSum()+"元</td>"); out.println("<tdalign=\"center\"><ahref=\"/dog_heaven/DelShoppingCartServlet?id="+item.getId()+"\"><fontcolor=\"red\">刪除</font></a></td>");out.println("</tr>");out.println("<tr>");out.println("<tdcolspan=\"3\"align=\"center\">總計:<fontcolor=\"red\";size=\"6\";>"+cart.getTotal()+"</font>元</td>");out.println("<tdalign=\"center\"><ahref=\"/dog_heaven/RemoveAllServlet\">清空</a></td>");out.println("<tdalign=\"center\"><inputtype=\"submit\"value=\"結(jié)算\"/></td>");out.println("</tr>");out.println("</form>");out.println("</table>");returnitems;5.2程序流程根據(jù)需求分析和詳細設計描述,能夠得出本系統(tǒng)的運行流程,如圖5.5所示。圖5.5系統(tǒng)程序流程圖6性能測試與分析6.1測試實例(測試集)的研究與選擇該測試案例是以一個B/S的功能點為被測對象,該測試用例為黑盒測試用例。所謂黑盒測試就是在程序接口進行測試,它是檢查功能是否按要求實現(xiàn)各個功能,程序是否能適當?shù)亟邮蛰斎霐?shù)據(jù)并產(chǎn)生正確的輸出信息。白盒測試與黑盒測試相反,測試根據(jù)被測程序的內(nèi)部結(jié)構(gòu)設計測試用例,測試者需事先了解程序的結(jié)構(gòu)。本系統(tǒng)的測試功能描述如下:1.用戶登錄界面輸入密碼,進入購物網(wǎng)站主界面。2.選擇一件商品,放入購物車。3.更改購物車中商品數(shù)量、種類,點擊結(jié)算按鈕,進入訂單生成界面。4.填寫訂單信息,點擊確定,完成訂單,等待賣家發(fā)貨。6.2測試環(huán)境1.硬件環(huán)境硬件配置主要包括硬件的選擇。網(wǎng)上購物系統(tǒng)的硬件配置要根據(jù)用戶對系統(tǒng)的穩(wěn)定性要求、系統(tǒng)的容量來確定。2.軟件環(huán)境網(wǎng)上購物系統(tǒng)的軟件配置要根據(jù)用戶對系統(tǒng)的穩(wěn)定性要求以及用戶的維護水平來確定。當然,一般情況下,對微軟Windows界面比較熟悉,因此都使用WindowsXP操作系統(tǒng)。6.3性能分析1.對系統(tǒng)用戶進行管理。2.為了加強數(shù)據(jù)保密性,為用戶設置權(quán)限。3.系統(tǒng)最大限度地實現(xiàn)了易安裝性、易維護性和易操作性。4.系統(tǒng)運行穩(wěn)定、安全可靠。7結(jié)束語本系統(tǒng)是的設計與研發(fā)基于軟件工程學,用來對網(wǎng)上商品等信息進行有效的管理。大體可分為兩大功能模塊,前臺模塊和后臺模塊。往下又可分為許多子模塊。前臺模塊提供了商品展示功能和用戶購物功能。后臺模塊提供了管理用戶信息,管理商品信息,以及處理訂單信息等功能。本系統(tǒng)至上而下功能層次分明,為用戶和管理員的使用提供了便利。本次畢業(yè)設計中,也體現(xiàn)出了自身的不足。首先,在開發(fā)網(wǎng)上購物系統(tǒng)的前期,由于對開發(fā)工具的掌握還不夠全面,浪費了不少時間。其次,前期研發(fā)時缺少對本系統(tǒng)的總體設計,考慮的不夠全面,導致在底層功能擴充時,遇到了不少困難。再次,網(wǎng)站制作方面的知識比較缺乏,開發(fā)軟件的能力還有待提高。由于個人能力有限以及實踐經(jīng)驗欠缺,系統(tǒng)基本滿足了網(wǎng)上購物的功能需求,本系統(tǒng)不可避免有不足之處,如一些系統(tǒng)功能過于簡單,所以系統(tǒng)的功能還算不上很完善。希望老師和同學能給予建議和指導。參考文獻:[1]程雯.我國網(wǎng)絡購物現(xiàn)狀淺析[J].價格月刊,2009(09):18-26.[2]管晶晶.足不出戶購物是怎樣實現(xiàn)的?[J].今日科苑,2007(21):20-42.[3]來學偉.基于JSP的學生信息管理系統(tǒng)的設計[J].濟源職業(yè)技術(shù)學院學報,2010(11):1-160.[4]耿小芬,徐忠軍.VisualBasic中的數(shù)據(jù)訪問技術(shù)[J].中國教育信息化高職高教,2009,13:3-24.[5]崔巍陳國青.數(shù)據(jù)庫應用與設計[M].北京:清華大學出版社,2009.[6]梁小曉.基于B/S結(jié)構(gòu)學生信息管理系統(tǒng)的設計與實現(xiàn)[D].成都.電子科技大學:2009.[7]鐘彩華.學生信息管理系統(tǒng)的設計與實現(xiàn)[D].江西.南昌大學:2009.[8]Freeman,EricFreemar,BertBates,KatlySierra.HeadFirstDesignPatterns[M].London:CambridgeUniversityPress,2001.[9]TiinaHavana.CommunicationInTheSoftwareVulnerabilityReportingProcess[M].Jyvaskyla:JyvaskylaUniversityPress,2008.[10]鞏康.JDBC,MySQL和JDBCProxy聯(lián)合實現(xiàn)Java數(shù)據(jù)庫[J],2010(10):110-137.
DesignAndImplementationofAJava-BasedOnlineShoppingSystemAbstract:Withchanginglifestylesandconsumerattitudes,onlineshopping,withitssimple,fastandsohasbeenacceptedbymoreandmorepeople.ThisdissertationmainlydiscussesthedesignandimplementationofJava-basedonlineshoppingsystem.Thissystemisfortheneedsofpeopleshoppingonlinedesignandimplementation.Thesystem'smainfunctionistoflowintocommoditiestradinginformationmanagement.Systemcanbedividedintotwopartsfrontandback,frontmainachievementlogin,registration,search,shoppingcartandpaymentoperations;backgroundismainlytoachievemembershipmanagement,productmanagement,ordermanagementandannouncementsmanagement.ThewholeprocesstoMyEclipsedevelopmenttools,implementedinMySQLsupport.SysteminterfaceusingJSP,CSS,JS,Ajaxandothertechnologies,makingonlineshoppingeasy,safeandfast.Keywords:java;mysql;jsp
畢業(yè)設計(論文)原創(chuàng)性聲明和使用授權(quán)說明原創(chuàng)性聲明本人鄭重承諾:所呈交的畢業(yè)設計(論文),是我個人在指導教師的指導下進行的研究工作及取得的成果。盡我所知,除文中特別加以標注和致謝的地方外,不包含其他人或組織已經(jīng)發(fā)表或公布過的研究成果,也不包含我為獲得及其它教育機構(gòu)的學位或?qū)W歷而使用過的材料。對本研究提供過幫助和做出過貢獻的個人或集體,均已在文中作了明確的說明并表示了謝意。作者簽名:日期:指導教師簽名:日期:使用授權(quán)說明本人完全了解大學關(guān)于收集、保存、使用畢業(yè)設計(論文)的規(guī)定,即:按照學校要求提交畢業(yè)設計(論文)的印刷本和電子版本;學校有權(quán)保存畢業(yè)設計(論文)的印刷本和電子版,并提供目錄檢索與閱覽服務;學??梢圆捎糜坝?、縮印、數(shù)字化或其它復制手段保存論文;在不以贏利為目的前提下,學??梢怨颊撐牡牟糠只蛉績?nèi)容。作者簽名:日期:
學位論文原創(chuàng)性聲明本人鄭重聲明:所呈交的論文是本人在導師的指導下獨立進行研究所取得的研究成果。除了文中特別加以標注引用的內(nèi)容外,本論文不包含任何其他個人或集體已經(jīng)發(fā)表或撰寫的成果作品。對本文的研究做出重要貢獻的個人和集體,均已在文中以明確方式標明。本人完全意識到本聲明的法律后果由本人承擔。作者簽名: 日期:年月日學位論文版權(quán)使用授權(quán)書本學位論文作者完全了解學校有關(guān)保留、使用學位論文的規(guī)定,同意學校保留并向國家有關(guān)部門或機構(gòu)送交論文的復印件和電子版,允許論文被查閱和借閱。本人授權(quán)大學可以將本學位論文的全部或部分內(nèi)容編入有關(guān)數(shù)據(jù)庫進行檢索,可以采用影印、縮印或掃描等復制手段保存和匯編本學位論文。涉密論文按學校規(guī)定處理。作者簽名: 日期:年月日導師簽名:日期:年月日
指導教師評閱書指導教師評價:一、撰寫(設計)過程1、學生在論文(設計)過程中的治學態(tài)度、工作精神□優(yōu)□良□中□及格□不及格2、學生掌握專業(yè)知識、技能的扎實程度□優(yōu)□良□中□及格□不及格3、學生綜合運用所學知識和專業(yè)技能分析和解決問題的能力□優(yōu)□良□中□及格□不及格4、研究方法的科學性;技術(shù)線路的可行性;設計方案的合理性□優(yōu)□良□中□及格□不及格5、完成畢業(yè)論文(設計)期間的出勤情況□優(yōu)□良□中□及格□不及格二、論文(設計)質(zhì)量1、論文(設計)的整體結(jié)構(gòu)是否符合撰寫規(guī)范?□優(yōu)□良□中□及格□不及格2、是否完成指定的論文(設計)任務(包括裝訂及附件)?□優(yōu)□良□中□及格□不及格三、論文(設計)水平1、論文(設計)的理論意義或?qū)鉀Q實際問題的指導意義□優(yōu)□良□中□及格□不及格2、論文的觀念是否有新意?設計是否有創(chuàng)意?□優(yōu)□良□中□及格□不及格3、論文(設計說明書)所體現(xiàn)的整體水平□優(yōu)□良□中□及格□不及格建議成績:□優(yōu)□良□中□及格□不及格(在所選等級前的□內(nèi)畫“√”)指導教師:(簽名)單位:(蓋章)年月日評閱教師評閱書評閱教師評價:一、論文(設計)質(zhì)量1、論文(設計)的整體結(jié)構(gòu)是否符合撰寫規(guī)范?□優(yōu)□良□中□及格□不及格2、是否完成指定的論文(設計)任務(包括裝訂及附件)?□優(yōu)□良□中□及格□不及格二、論文(設計)水平1、論文(設計)的理論意義或?qū)鉀Q實際問題的指導意義□優(yōu)□良□中□及格□不及格2、論文的觀念是否有新意?設計是否有創(chuàng)意?□優(yōu)□良□中□及格□不及格3、論文(設計說明書)所體現(xiàn)的整體水平□優(yōu)□良□中□及格□不及格建議成績:□優(yōu)□良□中□及格□不及格(在所選等級前的□內(nèi)畫“√”)評閱教師:(簽名)單位:(蓋章)年月日PAGE6教研室(或答辯小組)及教學系意見教研室(或答辯小組)評價:一、答辯過程1、畢業(yè)論文(設計)的基本要點和見解的敘述情況□優(yōu)□良□中□及格□不及格2、對答辯問題的反應、理解、表達情況□優(yōu)□良□中□及格□不及格3、學生答辯過程中的精神狀態(tài)□優(yōu)□良□中□及格□不及格二、論文(設計)質(zhì)量1、論文(設計)的整體結(jié)構(gòu)是否符合撰寫規(guī)范?□優(yōu)□良□中□及格□不及格2、是否完成指定的論文(設計)任務(包括裝訂及附件)?□優(yōu)□良□中□及格□不及格三、論文(設計)水平1、論文(設計)的理論意義或?qū)鉀Q實際問題的指導意義□優(yōu)□良□中□及格□不及格2、論文的觀念是否有新意?設計是否有創(chuàng)意?□優(yōu)□良□中□及格
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024物業(yè)資產(chǎn)讓與擔保合同 資產(chǎn)方與受讓方協(xié)議
- 二零二四年免租金科研機構(gòu)租賃合同規(guī)范文本3篇
- 2025年管道檢測與修復水管安裝合同樣本3篇
- 2025年酒店布草租賃與智能化管理服務合同2篇
- 二零二五年度草料種植基地土壤治理合同3篇
- 二零二五年度租賃房屋租賃保證金監(jiān)管服務合同范本3篇
- 2025年校園體育設施平整施工合同6篇
- 二零二五年度數(shù)據(jù)中心場地租賃合同及數(shù)據(jù)安全保障與服務標準3篇
- 二零二五惠州法務專員招聘與法律知識普及培訓合同3篇
- 2024金融機構(gòu)貸款擔保合同
- 《水下拋石基床振動夯實及整平施工規(guī)程》
- 化學-廣東省廣州市2024-2025學年高一上學期期末檢測卷(一)試題和答案
- 2025四川中煙招聘高頻重點提升(共500題)附帶答案詳解
- 2025年云南大理州工業(yè)投資(集團)限公司招聘31人管理單位筆試遴選500模擬題附帶答案詳解
- 風電危險源辨識及控制措施
- 《教師職業(yè)道德與政策法規(guī)》課程教學大綱
- EHS工程師招聘筆試題與參考答案(某大型央企)2024年
- 營銷策劃 -麗亭酒店品牌年度傳播規(guī)劃方案
- 兒童傳染病預防課件
- 護理組長年底述職報告
- 集裝箱活動房供需合同
評論
0/150
提交評論