|
一鍵注冊,加入手機圈
您需要 登錄 才可以下載或查看,沒有帳號?立即注冊 
x
軟件設計報告
報告題目 | 基于WEB的二手交易平臺的設計與實現(xiàn) | Thesis Topic | Design and Implementation of Web - based Online flea market | 2022年 11 月 1 日
目 錄
摘 要ii
Abstractiiii
1 緒論11
1.1 系統(tǒng)開發(fā)背景11
1.2 開發(fā)意義11
1.3 國內外現(xiàn)狀11
1.4 本系統(tǒng)設計的內容22
1.5 設計的步驟22
2 系統(tǒng)開發(fā)技術22
2.1 動態(tài)網頁技術JSP2JSP2JSP2
2.2 框架SSH2SSH2SSH2
2.3 系統(tǒng)開發(fā)工具33
2.4 系統(tǒng)配置過程33
2.5 配置關鍵性問題的解決33
2.5.1 系統(tǒng)性能調整44
2.5.2 數(shù)據(jù)庫編碼44
2.5.3 頁面字符集44
3 系統(tǒng)分析44
3.1 可行性分析44
3.1.1 技術可行性44
3.1.2 經濟可行性55
3.1.3 可行性分析結論55
3.2 需求分析55
3.2.1 開發(fā)意圖55
3.2.2 功能需求55
3.2.3 數(shù)據(jù)流圖55
3.2.4 數(shù)據(jù)字典88
4 系統(tǒng)設計1111
4.1 系統(tǒng)的功能模塊設計1111
4.2 系統(tǒng)的工作流程1212
4.3 系統(tǒng)模塊詳細設計1414
5 數(shù)據(jù)庫設計2020
5.1 數(shù)據(jù)庫概念設計2020
5.1.1 實體屬性的定義2020
5.2 數(shù)據(jù)庫邏輯設計2222
6 系統(tǒng)實現(xiàn)2525
6.1 系統(tǒng)主頁面2525
6.2 非登錄用戶操作2525
6.2.1 用戶注冊2525
6.2.2 用戶登錄2626
6.2.3 找回密碼2727
6.2.4 查看商品信息2828
6.2.5 搜索商品2929
6.3 登錄用戶操作2929
6.3.1 購物車2929
6.3.2 付款3030
6.3.3 更新個人信息3131
6.4 后臺管理3131
6.4.1 后臺登錄3131
6.4.2 后臺主頁面3232
6.4.3 新增商品種類3232
6.4.4 商品種類列表3333
6.4.5 新增商品3333
6.4.6 商品列表3434
6.4.7 訂單列表3434
6.4.8 訂單條件查詢3434
6.4.9 用戶列表3535
7 系統(tǒng)壓力測試3535
7.1 系統(tǒng)壓力測試工具及環(huán)境3535
7.2 錄制測試過程3636
7.2.1 建立線程組3636
7.2.2 建立HTTP請求默認值3636
7.2.3 設置代理服務器3737
7.3 測試設置及啟動3838
7.3.1 設置登錄參數(shù)3838
7.3.2 啟動測試3939
7.4 測試結果3939
7.4.1 系統(tǒng)壓力測試聚合報告3939
7.4.2 系統(tǒng)壓力測試圖形結果4040
結 論4141
參考文獻4242
致 謝4343
附錄一:外文原文4444
附錄二:中文翻譯4848
1 緒論
1.1 系統(tǒng)開發(fā)背景
隨著網絡對人們生活和工作的影響日益增加,人們對網絡的依賴是越來越強烈,不論是個人還是企業(yè),都可以通過網絡渠道來進行商品信息交流和買賣流通。網上商城由此產生,慢慢進入了人們的視線當中,越來越多的商家在網上建起在線商城,向消費者提供一種新型的購物方式。網上商城的出現(xiàn),使消費者網上購物的過程變得簡單、方便、快捷。網上商城是一種具有交互功能的商業(yè)信息系統(tǒng),它在網絡上建立一個虛擬的購物商城,使購物變得快捷又輕松,因此網上商城近年來發(fā)展的異常迅速,網上商城對人們生活的影響也會越來越大。
不可否認,網上商城將是企業(yè)發(fā)展和個人生活所不可缺少的重要組成部分,而且在網上商城購物會成為廣大群眾所能接受的最主要消費方式。
1.2 開發(fā)意義
從系統(tǒng)的開發(fā)背景來看,開發(fā)一個網上商城系統(tǒng)會有以下幾項優(yōu)勢:
- 投資少,回收快。一項針對中國中小企業(yè)的情況調查顯示,個人在網下啟動銷售公司需要大量的資金,而網上商城的成本非常小。在網上籌辦一家商店投資費用很小,不用去租店面,不用囤積貨品,所需資金不會很多。網上商城比同等規(guī)模的門面商鋪“租金”要低得多,同時租金不會因為營業(yè)面積的增加而增加,商家也不用為延長營業(yè)時間而增付額外的費用。
- 基本不需要占壓資金。傳統(tǒng)商店的進貨資金少則幾千元,多則數(shù)萬元,而網上商城則不需要積壓太多的資金。
- 24小時營業(yè)。網上商城延長了傳統(tǒng)商店的營業(yè)時間,一天24小時、一年365天不停業(yè)經營,而且不需要很多專門人員值班。
- 不受店面空間的限制。哪怕只是街邊小店,在網上卻可以擁有百貨大樓那么大的店面,只要投資者愿意,可以擺上成千上萬種商品。
- 不受地理位置影響。不管客戶距離網上商城有多遠,也不管顧客是國內還是國外,只要客戶可以上網,在網上商城就可以很方便地找到并購買商品。
1.3 國內外現(xiàn)狀
在美國、歐洲等信息化程度較高的國家,網上商城發(fā)展迅速,世界一流零售商,如沃爾瑪、梅西百貨、家得寶和薩克斯等紛紛躋身于網絡銷售行列。而在美國的家庭中,人們已經越來越習慣網上購物。網上購物已經成為美國、英國、日本等發(fā)達國家的一種消費習慣。
在我國,網上購物從無到有也不過十幾年時間。而在最近幾年時間,網上購物變得火熱起來,網上購物迅速成為一種購物時尚。目前國內比較大型的網上購物商城如淘寶、閑魚、京東、唯品會等,發(fā)展都是非常迅速,而隨著國內計算機信息技術發(fā)展,網上購物會更加快速的發(fā)展起來,為消費者和商家都提供更加廣闊的銷售平臺。因此,開發(fā)一個網上商城系統(tǒng)非常符合當今社會的發(fā)展趨勢。
1.4 本系統(tǒng)設計的內容
本設計設計的是一個線上二手交易平臺,主要通過對現(xiàn)在網上商城發(fā)展形勢進行分析,對開發(fā)工具進行簡介,對系統(tǒng)的可行性進行分析、系統(tǒng)需求分析,然后進行系統(tǒng)的總體設計,設計數(shù)據(jù)庫中表的關系和表結構,最后完成系統(tǒng)的總體實現(xiàn),并對系統(tǒng)進行測試,從而完成整個系統(tǒng)。
1.5 設計的步驟
第一章:緒論,主要介紹系統(tǒng)的開發(fā)背景、研究意義、國內外現(xiàn)狀及設計的內容。
第二章:開發(fā)技術,主要介紹了開發(fā)系統(tǒng)使用的技術及使用的工具。
第三章:系統(tǒng)分析,主要包括系統(tǒng)的可行性分析,系統(tǒng)的需求分析。
第四章:系統(tǒng)設計,主要對系統(tǒng)功能模塊、工作流程和各模塊設計進行介紹。
第五章:數(shù)據(jù)庫設計,主要介紹系統(tǒng)所需的數(shù)據(jù)表信息及表之間聯(lián)系。
第六章:系統(tǒng)實現(xiàn),主要介紹了各個模塊的實現(xiàn)及關鍵代碼。
第七章:系統(tǒng)測試,對系統(tǒng)進行壓力測試,獲得測試結果。
2 系統(tǒng)開發(fā)技術
2.1 動態(tài)網頁技術JSP
JSP(Java Server Pages)是由Sun Microsystems公司(已經被Oracle收購)倡導、許多公司參與建立的一種動態(tài)網頁技術標準。它在傳統(tǒng)的網頁HTML文件中插入Java程序段和JSP標記,從而形成JSP文件。JSP技術相比其他技術有以下優(yōu)勢:
- 僅編寫一次,就可以在其他任何環(huán)境中運行。除了系統(tǒng)之外,代碼不需要做任何更改。
- 系統(tǒng)具有多平臺支持。JSP技術可以在眾多平臺上的環(huán)境中開發(fā),在任意的環(huán)境中進行系統(tǒng)部署和擴展。
- 功能強大的開發(fā)工具支持。已經具有很多優(yōu)秀的開發(fā)工具支持的JSP,其中許多都可以免費得到,并且許多工具可以順利運行于多種平臺下。
2.2 框架SSH
SSH是Struts+Hibernate+Spring的集成框架,SSH框架的特點有以下幾點:
(1) Struts降低了系統(tǒng)的耦合度,使系統(tǒng)的邏輯結構更加清晰。
(2) Hibernate是一種開源的對象關系映射框架,它對JDBC進行了輕量級的對象封裝,使系統(tǒng)操縱數(shù)據(jù)庫更加的方便。
(3) Spring框架中的IOC和AOP對系統(tǒng)進行最大程度解耦合,使系統(tǒng)的各層之間的耦合度減小,極大地提高了系統(tǒng)開發(fā)效率。
系統(tǒng)是集成SSH框架的,它的層次分別為:表示層、業(yè)務邏輯層和數(shù)據(jù)持久層。表示層采用JSP,Struts作為系統(tǒng)的整體基礎架構,SSH框架各層次關系如圖2-1所示。
圖2-1 SSH框架層次圖
2.3 系統(tǒng)開發(fā)工具
系統(tǒng)主要開發(fā)工具如下:
- Eclipse:Eclipse 是一個開放源代碼的、基于Java的可擴展開發(fā)平臺。就其本身而言,它只是一個框架和一組服務,用于通過插件組件構建開發(fā)環(huán)境。幸運的是,Eclipse 附帶了一個標準的插件集,包括Java開發(fā)工具(Java Development Kit,JDK)。
- Tomcat:它是一種具有運行時占用系統(tǒng)資源小,擴展性好,支持負載平衡等功能優(yōu)點的輕量級應用服務器。它的7.0版本實現(xiàn)了對JSP2.2的支持,而且增加了Web應用內存溢出偵測和預防功能,因此選用Tomcat7.0作為系統(tǒng)服務器。
- MySQL:它是一個關系型數(shù)據(jù)庫管理系統(tǒng),將數(shù)據(jù)保存到不同的表中,提高了訪問速度并提高了靈活性。MySQL數(shù)據(jù)庫速度快、體積小、移植性能好,而且它是開源的,選用MySQL數(shù)據(jù)庫對系統(tǒng)的各方面都有很大好處。MySQL5.7版本提高了MySQL的性能、可用性、可擴展性,因此選用MySQL5.7進行系統(tǒng)的數(shù)據(jù)庫管理。
2.4 系統(tǒng)配置過程
系統(tǒng)配置詳細過程:
- 在Eclipse中配置安裝好的的Java開發(fā)包和Tomcat服務器;
- 安裝MySQL5.7,設置賬號密碼,用于數(shù)據(jù)庫連接,然后安裝Navicat for MySQL,使得數(shù)據(jù)庫可以在圖形頁面下進行操作;
- 在Eclipse中新建Web Project項目,項目名為webShopping;
- 導入Struts2包,Spring包,Hibernate包,其中Struts2的配置文件為Struts.xml,Spring的配置文件為bean.xml,使用bean.xml文件進行數(shù)據(jù)庫連接池的配置;
- 導入外部的MySQL驅動包,用于數(shù)據(jù)庫連接。
2.5 配置關鍵性問題的解決
上述配置正確后,僅僅可以成功連接,所以還需要解決一些關鍵問題才能更好的運行程序。
2.5.1 系統(tǒng)性能調整
在對系統(tǒng)性能進行調整后才能更加快速穩(wěn)定運行系統(tǒng)。主要內容如下:
(1) 禁止Tomcat的自動重載
為了節(jié)約開發(fā)時間,在開發(fā)階段Tomcat容器提供自動重載功能,方便在修改Java代碼后不需要重新啟動服務。但是,在生產環(huán)境下面,卻占用了大量開銷,因為進行了完全沒有必要的重新載入操作,所以帶來了很不好的性能影響。同時,在部分類載入,部分類載入的時候也可能帶來各種難以處理的沖突。因此在J2EE的生產環(huán)境下關閉自動載入功能可以得到更好的性能。
(2) 控制HttpSession
在默認情況下,不要在JSP頁面中創(chuàng)建HttpSessions對象,JSP頁面默認會自動創(chuàng)建HttpSessions,如果JSP頁面中不需要HttpSessions,為了節(jié)省一些性能,使用下面的頁面指令避免自動創(chuàng)建HttpSessions對象: <%@ page session=&#34;false&#34;%>。
2.5.2 數(shù)據(jù)庫編碼
為了處理亂碼,數(shù)據(jù)庫應和頁面統(tǒng)一使用UTF-8編碼處理。在使用Navicat新建數(shù)據(jù)庫時,使用的字符集一項選擇:utf8 -- UTF-8 Unicode。
在進行數(shù)據(jù)庫連接時,需要使用參數(shù)characterEncoding,參數(shù)值為UTF-8,例如連接的數(shù)據(jù)庫為WebShopping,那么在配置數(shù)據(jù)庫連接時,使用的URL應該為: jdbc:mysql://localhost:3306/webShopping?useUnicode=true&characterEncoding=UTF-8。
2.5.3 頁面字符集
在每個JSP頁面中,都要聲明使用UTF-8這一字符集,在每個JSP頁面的最上都要加上這一句:<%@ page language=&#34;java&#34; contentType=&#34;text/html;charset=UTF-8&#34;%>,這樣才能夠保證每個JSP頁面中的中文顯示正常不出現(xiàn)亂碼。
3 系統(tǒng)分析
3.1 可行性分析
開發(fā)任何一個基于計算機的系統(tǒng),都會受到時間和資源上的限制。因此,在接受項目之前,必須根據(jù)客戶可能提供的時間和資源條件進行可行性研究。這樣就可以避免人力、物力、財力上的浪費。項目風險越大,開發(fā)高質量軟件的可行性就越小。
3.1.1 技術可行性
硬件、軟件要求不高,目前市場上的一般計算機軟硬件都能滿足系統(tǒng)開發(fā)要求。運用的編程軟件主要有Eclipse,使用JSP和SSH框架技術,數(shù)據(jù)庫采用MySQL。
- 當前JSP是一種應用廣泛的技術,實現(xiàn)了Html和Java的集成;SSH框架是Struts + Hibernate + Spring的集成框架,是目前流行的一種Web應用程序開源框架。
- 用JSP開發(fā)的Web應用是跨平臺的,既可以在Linux下運行,也可以在其他操作系統(tǒng)上運行。
- 維護工作方便,一般具有一定軟件開發(fā)經驗的人員,都可以在短時間內掌握維護工作。
3.1.2 經濟可行性
二手交易平臺系統(tǒng)的維護由程序人員即可完成,商家來進行對二手交易平臺的訂單、用戶的信息來管理,不必使用大量的銷售人員與客戶面對面的交流,節(jié)約了人員工資開支的成本。而在銷售業(yè)績上,網上商城并不比實體商店的銷售業(yè)績差,因此在經濟上是可行的。
3.1.3 可行性分析結論
經過以上對該項目進行各方面問題的分析,開發(fā)人員認為此項目的實現(xiàn)可以滿足用戶對商品的需要,方便用戶與商家的交流,減少商家實體店面的開支,減少實體店鋪對土地的浪費等,并且在技術和經濟等方面均可行,確定本系統(tǒng)可以立項開發(fā)。
3.2 需求分析
需求分析指在建立一個新的系統(tǒng)時,確定系統(tǒng)的目的、范圍、定義和功能時所要做的所用工作,需求分析是軟件工程中的一個關鍵過程。需求分析階段的任務是確定系統(tǒng)的功能。
3.2.1 開發(fā)意圖
本系統(tǒng)適用于商家在網上進行閑置商品銷售,實現(xiàn)了商家的上架下架物品,修改商品信息,添加刪除商品,用戶管理功能等。極大地節(jié)省了商家對實體店鋪的管理,物品的展示使用圖片、視頻信息便可。對客戶而言,可以實現(xiàn)對商品的瀏覽,商品價格的了解、下單、購買等功能,方便了商家與客戶之間的交流。
3.2.2 功能需求
在需求調查的基礎上,結合網上商城系統(tǒng)的總體目標,對用戶提出的需求從信息系統(tǒng)目標、業(yè)務功能、技術性能等方面分析,最終確定可行的、合理的系統(tǒng)功能需求。
根據(jù)以上分析,確定系統(tǒng)主要功能需求:
(2) 注冊功能:可以查詢用戶名是否已經存在,對注冊信息進行驗證。
(3) 商品瀏覽:可以查詢商品,顯示商品詳情,提供購買鏈接。
(4) 購物車管理:欲購買商品可以增添到購物車,也可以從購物車刪除商品。
(5) 訂單查詢:用戶登錄后可以下訂單,用戶登錄后也可以查看自己的訂單。
(6) 商品種類管理:管理員可以對商品種類進行添加、刪除操作。
(7) 商品管理:管理員可以添加商品、刪除商品,查看所有商品。
(8) 訂單管理:管理員登錄后可以對訂單進行管理。
(9) 用戶管理:管理員可以管理注冊用戶信息。
3.2.3 數(shù)據(jù)流圖
數(shù)據(jù)流圖是描述系統(tǒng)中數(shù)據(jù)流程的圖形工具。在本系統(tǒng)中,沒有登錄的用戶提交注冊信息、提交登錄信息,登錄后可以購買商品、提交訂單、修改個人信息。管理員可以對商品信息、訂單信息、用戶信息進行管理。這其中涉及到了對各個數(shù)據(jù)庫的信息處理。對本系統(tǒng)進行分析,可以得到以下幾個數(shù)據(jù)流圖:
- 網上商城系統(tǒng)頂層數(shù)據(jù)流圖如圖3-3所示。
圖3-3 二手交易平臺系統(tǒng)頂層數(shù)據(jù)流圖
(2) 二手交易平臺系統(tǒng)第一層數(shù)據(jù)流圖如圖3-4所示。
基于WEB的二手交易平臺的設計與實現(xiàn)(論文+源碼+視頻)-1.jpg (20.31 KB, 下載次數(shù): 5)
下載附件
2023-1-2 20:26 上傳
圖3-4 二手交易平臺系統(tǒng)第一層數(shù)據(jù)流圖
(3) 用戶信息管理數(shù)據(jù)流圖如圖3-5所示。
圖3-5 用戶管理數(shù)據(jù)流圖
(4) 商品管理數(shù)據(jù)流圖如圖3-6所示。
圖3-6 商品管理數(shù)據(jù)流圖
3.2.4 數(shù)據(jù)字典
數(shù)據(jù)字典是關于數(shù)據(jù)的信息的集合,也就是對數(shù)據(jù)流圖中包含的所有元素的定義的集合。數(shù)據(jù)字典是數(shù)據(jù)流圖上所有的成分的定義和解釋的文字的集合,它最重要的用途是供人查詢對不了解的條目的解釋。
數(shù)據(jù)字典主要的組成有:數(shù)據(jù)項、數(shù)據(jù)流、數(shù)據(jù)結構、數(shù)據(jù)存儲、處理過程。根據(jù)對本系統(tǒng)的數(shù)據(jù)流圖的分析,本系統(tǒng)的數(shù)據(jù)字典的主要內容如下:
- 關鍵部分數(shù)據(jù)項(僅對關鍵數(shù)據(jù)項進行描述)。關鍵部分數(shù)據(jù)項如表3-1所示。
數(shù)據(jù)項名 | 數(shù)據(jù)項描述 | 用戶ID | 用戶的編號 | 用戶名 | 用戶登錄賬號 | 用戶密碼 | 用戶登錄密碼 | 用戶姓名 | 用戶的姓名 | 郵寄地址 | 用戶接收商品的地址 | 商品名稱 | 商品的名稱 | 商品種類 | 商品的種類 | 商城價格 | 商品在商城的售價 | 剩余數(shù)量 | 商品的剩余數(shù)量 | 商品圖片 | 商品的圖片地址 | 訂單編號 | 訂單的編號 | 是否付款 | 用戶是否已經付款 | 是否發(fā)貨 | 商城是否已經發(fā)貨 | 表3-1 關鍵部分數(shù)據(jù)項
數(shù)據(jù)結構反映了數(shù)據(jù)之間的組合關系。本系統(tǒng)的主要數(shù)據(jù)結構如下所示:
① 用戶信息的數(shù)據(jù)結構如下:
數(shù)據(jù)結構:用戶
數(shù)據(jù)項說明:用戶的各項信息
數(shù)據(jù)項組成:用戶ID+用戶名+用戶姓名+用戶密碼+用戶性別+用戶電話+郵編+郵寄地址+電子郵件
② 商品信息的數(shù)據(jù)結構如下:
數(shù)據(jù)結構:商品
數(shù)據(jù)項說明:商品的各項信息
數(shù)據(jù)項組成: 商品編號+商品名稱+商品圖片+商品種類+商品描述+商品廠商+商品原價+商城價格+商品總量+剩余數(shù)量
③ 訂單信息的數(shù)據(jù)結構如下:
數(shù)據(jù)結構:訂單
數(shù)據(jù)項說明:訂單的信息
數(shù)據(jù)項組成:訂單編號+商品信息+用戶名+用戶備注+提交時間+總金額+是否付款+是否發(fā)貨+發(fā)貨時間+訂單流水號
⑤ 管理員的數(shù)據(jù)結構如下:
數(shù)據(jù)結構:管理員
數(shù)據(jù)項說明:管理員的信息
數(shù)據(jù)項組成:管理員編號+管理員用戶名+管理員密碼
⑥ 商品種類的數(shù)據(jù)結構如下:
數(shù)據(jù)結構:商品種類
數(shù)據(jù)項說明:商品種類的信息
數(shù)據(jù)項組成:商品種類名稱+商品種類編號
- 數(shù)據(jù)流是數(shù)據(jù)結構在系統(tǒng)內的傳輸路徑。本系統(tǒng)的數(shù)據(jù)流主要有:
① 用戶登錄數(shù)據(jù)流如下:
數(shù)據(jù)流名稱:用戶登錄
說明:用戶登錄輸入的賬號和密碼
數(shù)據(jù)流來源:用戶信息表
數(shù)據(jù)流去向:用戶信息表
組成:用戶
平均數(shù)據(jù)量:100次/每小時
高峰期流量:400次/每小時(商品優(yōu)惠活動期間)
② 用戶注冊數(shù)據(jù)流如下:
數(shù)據(jù)流名稱:用戶注冊
說明:用戶注冊信息
數(shù)據(jù)流來源:用戶信息表
數(shù)據(jù)流去向:用戶信息表
組成:用戶
平均數(shù)據(jù)量:20次/每小時
高峰期流量:50次/每小時
③ 用戶信息更新數(shù)據(jù)流如下
數(shù)據(jù)流名稱:用戶信息更新
說明:用戶更新個人信息
數(shù)據(jù)流來源:用戶信息表
數(shù)據(jù)流去向:用戶信息表
組成:用戶
平均數(shù)據(jù)量:10次/每小時
高峰期流量:20次/每小時(商品優(yōu)惠活動期間)
④ 訂單提交數(shù)據(jù)流如下:
數(shù)據(jù)流名稱:提交訂單
說明:用戶提交訂單信息
數(shù)據(jù)流來源:用戶信息表
數(shù)據(jù)流去向:訂單信息表
組成:訂單
平均數(shù)據(jù)量:30次/每小時
高峰期流量:50次/每小時(商品優(yōu)惠活動期間)
⑤ 添加商品數(shù)據(jù)流如下:
數(shù)據(jù)流名稱:添加商品
說明:管理員添加商品信息
數(shù)據(jù)流來源:管理員信息表
數(shù)據(jù)流去向:商品信息表
組成:商品
平均數(shù)據(jù)量:20次/每天
高峰期流量:50次/每天(進貨種類較多時)
4 系統(tǒng)設計
4.1 系統(tǒng)的功能模塊設計
二手交易平臺系統(tǒng)由前臺管理、后臺管理兩部分組成。
前臺管理:該部分主要是用戶對商品的查詢等功能,用戶沒有注冊可以實現(xiàn)商品的查詢和商品信息的查看;用戶注冊后就可以進行添加商品到購物車、從購物車刪除商品、訂單提交、個人信息更新等操作。
后臺管理:該部分主要對商城內的一些基礎數(shù)據(jù)進行有效管理,包括商品管理、會員管理、訂單管理等。
- 網上商城系統(tǒng)的前臺系統(tǒng)框架圖如圖4-1所示。
基于WEB的二手交易平臺的設計與實現(xiàn)(論文+源碼+視頻)-2.jpg (2.19 KB, 下載次數(shù): 5)
下載附件
2023-1-2 20:26 上傳
圖4-1 前臺系統(tǒng)框架圖
前臺主要功能介紹:
① 搜索商品:用戶不用登錄可以輸入商品的名稱來查看需要查詢的商品,而且可以查看商品的詳細信息,如生產廠商、剩余數(shù)量、介紹等。
② 分類查詢:用戶可以按分類來查看該分類的商品。
③ 用戶注冊:用戶可以輸入注冊信息來注冊,用戶可以檢查用戶名是否存在,用戶注冊信息沒有錯誤則可正確注冊(不要使用中文名稱來注冊)。
④ 用戶登錄:用戶輸入登錄名和密碼進行登錄,如果用戶名和密碼錯誤則無法登錄。
⑤ 更新信息:用戶登錄后可以查看個人信息并更新個人信息,還可以修改密碼。
⑧ 購物車:用戶登錄后就可以購物,可以把商品加入到購物車,或者把商品從購物車刪除,如果商品數(shù)量為0則無法加入到購物車。
⑨ 提交訂單:用戶把商品添加到購物車后即可提交訂單,訂單提交后用戶可以進行付款(本系統(tǒng)為用戶模擬了一個賬戶,用于用戶購物,用戶賬戶余額不足則無法付款)。
⑩ 查看訂單:用戶可以查看自己的訂單。
- 網上商城系統(tǒng)的后臺系統(tǒng)框架圖如圖4-2所示。
基于WEB的二手交易平臺的設計與實現(xiàn)(論文+源碼+視頻)-3.jpg (13.09 KB, 下載次數(shù): 5)
下載附件
2023-1-2 20:26 上傳
圖4-2 后臺系統(tǒng)框架圖
后臺主要功能介紹:
① 商品種類管理:管理登錄后臺后可以對商品種類進行添加、刪除。添加時如果商品種類已經存在會提示添加錯誤。
② 商品管理:管理員對商品進行添加、刪除操作,如果商品已經存在,添加時會提示商品已經存在。
③ 訂單管理:管理員可以查詢訂單,查看所有訂單信息。
④ 用戶管理:管理員可以查詢用戶信息,管理用戶信息。
⑥ 系統(tǒng)管理:管理員可以修改登錄密碼,安全退出。
4.2 系統(tǒng)的工作流程
- 二手交易平臺系統(tǒng)前臺的工作流程如圖4-3所示。
圖4-3 前臺工作流程圖
- 二手交易平臺系統(tǒng)后臺的工作流程如圖4-4所示。
圖4-4 后臺工作流程圖
4.3 系統(tǒng)模塊詳細設計
- 用戶注冊
用戶注冊是用戶想要購買商品所必須進行的,用戶注冊需要填寫正確的信息,用戶賬戶一旦注冊就不能修改,用戶的其他信息可以修改。用戶填寫信息需要正確填寫各項信息,如收貨地址,用戶下訂單后用戶的收貨地址如果是錯誤的則無法正確發(fā)貨的。用戶注冊后,使用用戶名和密碼登錄系統(tǒng),可以進行購物、下訂單、提交留言操作。用戶注冊的流程圖如圖4-5所示。
圖4-5 用戶注冊流程圖
- 用戶登錄
用戶登錄時需要輸入用戶名和密碼,系統(tǒng)對用戶輸入信息進行驗證,如果用戶輸入信息錯誤則需要重新輸入,用戶輸入正確則可以成功登錄,跳轉到首頁,顯示用戶常用操作例如修改密碼,修改信息,退出等。用戶如果忘記密碼可以通過查找密碼來重新設置密碼。用戶登錄流程圖如圖4-6所示。
圖4-6 用戶登錄流程圖
- 用戶信息修改
用戶登錄后可以修改個人信息,修改個人信息后需要重新登錄才能查看到更新之后的信息。用戶登錄后可以修改密碼,重新登錄需要使用修改后的密碼才能登錄。用戶信息修改流程圖如圖4-7所示。
圖4-7 用戶信息修改流程圖
用戶修改密碼流程圖如圖4-8所示。
圖4-8 用戶修改密碼流程圖
- 用戶找回密碼
用戶如果忘記密碼,可以通過輸入注冊時的信息來重設密碼。如果輸入的注冊信息錯誤則無法重設密碼,只有輸入正確的注冊信息才能進行密碼重設。用戶找回密碼的流程圖如圖4-9所示。
圖4-9 用戶找回密碼流程圖
- 用戶查看商品
用戶不需要登錄就可以搜索商品,查看商品詳細信息。用戶可以通過搜索商品名稱來搜索商品,或者商品分類來查看該種類的商品。用戶查看商品流程圖如圖4-10所示。
圖4-10 用戶查看商品流程圖
添加到購物車
用戶登錄后可以把商品添加到購物車,也可以對購物車商品進行刪除。如果商品的剩余數(shù)量為0則無法把商品添加到購物車。添加到購物車流程如圖4-11所示。
圖4-11 添加到購物車流程圖
(8) 管理商品
管理員登錄后臺后,可以對商品進行管理,添加、刪除商品。添加時如果商品已經存在則無法添加。管理商品流程圖如圖4-13所示。
圖4-13 管理商品流程圖
(9) 管理商品種類
管理員登錄后臺后,可以對商品種類進行管理,添加和刪除商品種類。如果添加時商品種類已經存在則無法添加。管理商品種類流程圖如圖4-14所示。
圖4-14 管理商品種類流程圖
(10) 系統(tǒng)管理
管理員登錄后,可以修改登錄密碼、退出系統(tǒng)。系統(tǒng)管理流程圖如圖4-15所示。
圖4-15 系統(tǒng)管理流程圖
5 數(shù)據(jù)庫設計
5.1 數(shù)據(jù)庫概念設計
數(shù)據(jù)庫概念設計是根據(jù)對系統(tǒng)的分析、系統(tǒng)設計,規(guī)劃出系統(tǒng)中使用的數(shù)據(jù)庫實體。描述概念模型的工具主要是E-R圖。根據(jù)對本系統(tǒng)的分析,規(guī)劃出本系統(tǒng)所需要的實體,具體有:用戶、商品、商品種類、管理員、訂單。
5.1.1 實體屬性的定義
- 用戶實體擁有的屬性有用戶ID、用戶名、用戶密碼、性別、姓名、電話、郵寄地址和電子郵箱這八個屬性。用戶實體屬性如圖5-1所示。
圖5-1 用戶實體屬性圖
- 商品實體擁有的屬性有商品ID、商品名稱、商品種類、商品圖片、商品描述、商品廠商、商城價格、商品原價、總數(shù)量和剩余數(shù)量這十個屬性。商品實體屬性如圖5-2所示。
圖5-2 商品實體屬性圖
- 商品種類實體擁有的屬性有商品種類和商品種類名稱這兩個屬性。商品種類實體屬性如圖5-3所示。
圖5-3 商品種類實體屬性圖
- 訂單實體擁有的屬性有訂單ID、訂單用戶名、商品、提交時間、發(fā)貨時間、總金額、是否發(fā)貨和是否付款這個八個屬性。訂單實體屬性如圖5-4所示。
圖5-4 訂單實體屬性圖
- 管理員實體擁有的屬性有管理員ID、管理員用戶名和管理員密碼這三個屬性。管理員實體屬性如圖5-5所示。
圖5-5 管理員實體屬性圖
5.2 數(shù)據(jù)庫邏輯設計
- 用戶信息表(users)
用戶信息表:用于記錄用戶ID、用戶名、用戶姓名、用戶密碼、用戶性別、用戶電話、商品郵寄地址和用戶電子郵件等信息。用戶信息表的內容如表6-1所示。
字段名 | 數(shù)據(jù)類型 | 約束條件 | 是否可空 | 默認值 | 注釋 | userId | int(20) | 主鍵 | 否 | 1 | 用戶ID(自增) | username | varchar(50) | 否 | 無 | 用戶名 | password | varchar(50) | 否 | 無 | 用戶密碼 | name | varchar(50) | 否 | 無 | 用戶姓名 | sex | varchar(50) | 否 | 無 | 用戶性別 | 表6-1 用戶信息表
商品信息表:用于記錄商品編號、商品種類、商品名稱、圖片商品描述、商品廠商,商品原價格,商城出售價格,商品總數(shù)量和商品剩余數(shù)量等信息。商品信息表的內容如表6-2所示。
字段名 | 數(shù)據(jù)類型 | 約束條件 | 是否可空 | 默認值 | 注釋 | commodityId | int(20) | 主鍵 | 否 | 1 | 商品編號(自增) | commodityClass | varchar(50) | 外鍵 | 否 | 無 | 商品種類 | commodityName | varchar(50) | 否 | 無 | 商品名稱 | manufacturer | varchar(50) | 否 | 無 | 商品廠商 | commodityDepict | varchar(255) | 否 | 無 | 商品描述 | commodityPrice | double(20) | 否 | 無 | 商品原價 | webShopPrice | double(20) | 否 | 無 | 商城價格 | commodityAmount | int(50) | 否 | 無 | 商品總量 | commodityLeaveNum | int(50) | 否 | 無 | 剩余數(shù)量 | image | varchar(255) | 否 | 無 | 商品圖片 | 表6-2商品信息表
(3) 商品種類信息表(commodityclasses)
商品種類信息表:用于記錄商品種類的編號,商品種類名稱等信息。商品種類信息表的內容如表6-3所示。
表6-3商品種類信息表
字段名 | 數(shù)據(jù)類型 | 約束條件 | 是否可空 | 默認值 | 注釋 | commodityId | int(20) | 主鍵 | 否 | 1 | 商品種類編號(自增) | commodityClass | varchar(50) | 否 | 無 | 商品種類名稱 | (4) 訂單信息表(orderform)
訂單信息表:用于記錄訂單的編號,用戶信息,訂單提交時間,發(fā)貨時間,總金額,買家備注,買家是否付款,是否發(fā)貨等信息。訂單信息表的內容如表6-4所示。
表6-4 訂單信息表
字段名 | 數(shù)據(jù)類型 | 約束條件 | 是否可空 | 默認值 | 注釋 | orderFormId | int(20) | 主鍵 | 否 | 1 | 訂單編號(自增) | username | varchar(20) | 外鍵 | 否 | 無 | 用戶名 | commodity | varchar(50) | 外鍵 | 否 | 無 | 商品信息 | submitTime | varchar(50) | 否 | 無 | 提交時間 | consignmentTime | varchar(50) | 是 | 無 | 發(fā)貨時間 | totalPrice | varchar(50) | 否 | 無 | 總金額 | remark | varchar(50) | 是 | 無 | 用戶備注 | isPayoff | varchar(10) | 否 | 無 | 是否付款 | isConsignment | varchar(10) | 是 | 無 | 是否發(fā)貨 | orderFormNum | bigint(20) | 否 | 無 | 訂單流水號 | (5) 管理員信息表(admins)
管理員信息表:用于記錄管理員編號,管理員用戶名,管理員密碼等信息。管理員信息表內容如表6-5所示。
字段名 | 數(shù)據(jù)類型 | 約束條件 | 是否可空 | 默認值 | 注釋 | adminId | int(20) | 主鍵 | 否 | 1 | 管理員編號(自增) | adminName | varchar(255) | 否 | 無 | 管理員用戶名 | adminPassword | varchar(255) | 否 | 無 | 管理員密碼 | 表6-5管理員信息表
6 系統(tǒng)實現(xiàn)
6.1 系統(tǒng)主頁面
系統(tǒng)主要使用淡色調,顏色不會很刺眼,不會使客戶感到反感。系統(tǒng)頁面簡潔,上方的導航則包括用戶登錄、用戶注冊、留言板等信息,下方顯示商品種類列表、上架商品、商城公告、用戶登錄框等信息,用戶可以通過左側導航欄查詢每個種類的商品,也可以通過搜索來查找商品。系統(tǒng)主頁面如圖6-1所示。
基于WEB的二手交易平臺的設計與實現(xiàn)(論文+源碼+視頻)-9.jpg (77.77 KB, 下載次數(shù): 5)
下載附件
2023-1-2 20:26 上傳
圖6-1 系統(tǒng)主頁面
系統(tǒng)主頁的商品分類需要通過請求來獲取商品種類列表。
獲取商品種類列表的關鍵代碼如下:
public String execute() throws Exception {
Map request = (Map) ActionContext.getContext().get(&#34;request&#34;);
commodityClasses = commodityClassService.findAllCommodityClasses();
request.put(&#34;listCommodityClasses&#34;, commodityClasses); //列表信息保存到listCommodityClasses中
return &#34;success&#34;; }
6.2 非登錄用戶操作
6.2.1 用戶注冊
用戶可通過注冊成為商城會員,點擊用戶注冊打開用戶注冊頁面,用戶注冊包括用戶名、密碼、用戶姓名、性別、電話、收貨地址、電子郵箱等信息,用戶點擊每個輸入框時后方會提示需填入的內容或注意事項。用戶注冊頁面如圖6-2所示。
基于WEB的二手交易平臺的設計與實現(xiàn)(論文+源碼+視頻)-10.jpg (55.39 KB, 下載次數(shù): 5)
下載附件
2023-1-2 20:26 上傳
圖6-2 用戶注冊頁面
用戶提交注冊信息后,若沒有錯誤的信息,則會提示注冊成功,跳轉到登錄頁面。若用戶注冊信息有錯誤,則會提示注冊失敗,返回到注冊頁面,用戶應重新注冊。
用戶注冊關鍵代碼如下:
public String execute() throws Exception {
String username= user.getUsername();
User user = service.findUserByName(username); //查詢該用戶名是否存在
if(user==null){
this.service.save(this.user);
return &#34;success&#34;; }
else{
return &#34;error&#34;;}
}
6.2.2 用戶登錄
用戶可以通過右側的登錄框登錄,也可通過上方的導航欄打開用戶登錄頁面進行登錄。用戶登錄頁面如圖6-3所示。
基于WEB的二手交易平臺的設計與實現(xiàn)(論文+源碼+視頻)-11.jpg (44.21 KB, 下載次數(shù): 5)
下載附件
2023-1-2 20:26 上傳
圖6-3 用戶登錄頁面
如果用戶名和密碼正確,則會提示登錄成功,跳轉到主頁。如果用戶名和密碼不正確,則會提示登錄失敗,返回到登錄頁面,用戶需要再次登錄。用戶登錄后可以查看購物車中商品、提交留言、查看自己的訂單等。用戶可以點擊退出按鈕退出系統(tǒng)。用戶登錄成功后頁面如圖6-4所示。
基于WEB的二手交易平臺的設計與實現(xiàn)(論文+源碼+視頻)-12.jpg (42.43 KB, 下載次數(shù): 4)
下載附件
2023-1-2 20:26 上傳
圖6-4 用戶登錄成功后頁面
用戶登錄關鍵代碼如下:
public String login(){
String username= user.getUsername();
String password=user.getPassword();
User user = service.getUserByLoginNameAndPassword(username,password);
//搜索是否存在該用戶
if(user == null){
ActionContext.getContext().put(&#34;message&#34;, &#34;用戶名或密碼錯誤&#34;);
return &#34;login&#34;;
}else{
ActionContext.getContext().getSession().put(&#34;user&#34;, user);
return &#34;index&#34;;
}
}
6.2.3 找回密碼
如果用戶已經注冊過,但是密碼輸入不正確或者忘記密碼,可以通過輸入正確的注冊信息來重新設置密碼。輸入找回密碼信息頁面如圖6-5所示。
基于WEB的二手交易平臺的設計與實現(xiàn)(論文+源碼+視頻)-13.jpg (10.71 KB, 下載次數(shù): 5)
下載附件
2023-1-2 20:26 上傳
圖6-5 輸入找回密碼信息頁面
用戶輸入正確的信息后即可進入重新設置密碼頁面,進行秘密的重置。
找回密碼關鍵代碼如下:
public String findUser()
{String username= user.getUsername();
String name= user.getName();
String sex= user.getSex();
String post= user.getPost();
String address= user.getAddress();
String phone= user.getPhone();
String email= user.getEmail();
User user=this.service.findUserByinfo(username, name,sex,phone, post, address, email); //查詢是否有該用戶信息
if(user==null){
ActionContext.getContext().put(&#34;findUsernull&#34;, &#34;沒有該用戶信息!&#34;);
return &#34;findUsernull&#34;;
}else{
ActionContext.getContext().getSession().put(&#34;findUser&#34;, user);
return &#34;findUser&#34;;
}
6.2.4 查看商品信息
點擊商品下的詳細按鈕,可以查看商品的詳細信息,在商品的詳細信息中可以看到商品的名稱、商品編號、商品生產廠商、價格、數(shù)量、上架時間和商品的描述,這項操作用戶沒有登錄也可以進行。商品信息頁面如圖6-6所示。
基于WEB的二手交易平臺的設計與實現(xiàn)(論文+源碼+視頻)-14.jpg (61.24 KB, 下載次數(shù): 5)
下載附件
2023-1-2 20:26 上傳
圖6-6 商品詳細信息頁面
商品詳細信息關鍵代碼如下:
public String findCommodityById(){
int commId= commodity.getCommodityId();
Commodity commodity = this.service.findCommodityById(commId);
ActionContext.getContext().getSession().put(&#34;commodityById&#34;, commodity);
return &#34;findCommodityById&#34;;
}
6.2.5 搜索商品
用戶可以通過輸入商品的部分關鍵字進行商品搜索,搜索商品后會顯示搜索到的信息,如果沒有相關信息會輸出沒有改商品信息。搜索商品信息結果頁面如圖6-7所示。
基于WEB的二手交易平臺的設計與實現(xiàn)(論文+源碼+視頻)-15.jpg (20.72 KB, 下載次數(shù): 6)
下載附件
2023-1-2 20:26 上傳
圖6-7 搜索商品結果頁面
搜索商品關鍵代碼如下:
public String findCommodityByName(){
String commodityName= commodity.getCommodityName();
Map request = (Map) ActionContext.getContext().get(&#34;request&#34;);
request.put(&#34;commoditybyName&#34;,this.service.findCommodityByName(
commodityName)); //保存搜索的信息
ActionContext.getContext().getSession().put(&#34;searchnameMessage&#34;,
commodityName);
return &#34;findCommodityByName&#34;;
}
6.3 登錄用戶操作
6.3.1 購物車
用戶只有登錄后才能把商品添加到購物車。在每件商品的下方都有添加到購物車按鈕,點擊添加就可以添加到購物車,添加一次商品,商品剩余數(shù)量就減少1,如果商品剩余數(shù)量為0,則無法添加到購物車,提示商品無供貨。在購物車中可以查看購物車中的物品,商品的簡單信息。在購物車中可以移除商品,移除商品時,商品剩余數(shù)量會增加1。用戶可以在買家備注里輸入備注信息,然后點擊提交訂單進行訂單的提交,也可以點擊繼續(xù)購物繼續(xù)瀏覽商品。購物車頁面如圖6-9所示。
基于WEB的二手交易平臺的設計與實現(xiàn)(論文+源碼+視頻)-16.jpg (20.74 KB, 下載次數(shù): 5)
下載附件
2023-1-2 20:26 上傳
圖6-9 購物車頁面
商品添加到購物車關鍵代碼如下:
public String execute() throws Exception {
int commodityId= commodity.getCommodityId();
Map session =(Map) ActionContext.getContext().getSession();
Commodity commoditys = commodityService.findCommodityById (commodityId); //獲得商品信息
if(commoditys.getCommodityLeaveNum()==0){
ActionContext.getContext().getSession().put(&#34;comnull&#34;,&#34;商品已無貨!&#34;);
return &#34;error&#34;;
}
else{
List<Commodity> car = null; //聲明一個購物車
if(session.get(&#34;car&#34;) == null) {//如果session中不存在購物車
car = new ArrayList<Commodity>();//新建一個ArrayList實例
}
else {
car = (List<Commodity>)session.get(&#34;car&#34;); //取得購物車 }
}
commoditys.setCommodityLeaveNum(commoditys.getCommodityLeaveNum()-1);
commodityService.update(commoditys);
session.put(&#34;car&#34;, car);//將購物車保存在session中
return &#34;success&#34;;}
6.3.2 付款
用戶點擊提交訂單按鈕后,用戶的訂單就提交到了數(shù)據(jù)庫,然后可以進行付款操作。用戶付款時會檢查用戶金額,如果用戶金額不足,會提示余額不足無法付款;用戶余額足夠才能付款成功。如果用戶沒有對訂單進行付款,商家則不會發(fā)貨。用戶付款頁面如圖6-10所示。
基于WEB的二手交易平臺的設計與實現(xiàn)(論文+源碼+視頻)-17.jpg (16.89 KB, 下載次數(shù): 5)
下載附件
2023-1-2 20:26 上傳
圖6-10 用戶付款頁面
6.3.3 更新個人信息
用戶登錄以后可以修改個人信息,修改個人信息時需要輸入正確的信息,點擊更新個人信息后即可更新個人信息,但是需要用戶重新登錄之后才會顯示更新后的信息。用戶也可以修改登錄密碼。用戶更新個人信息頁面如圖6-12所示。
基于WEB的二手交易平臺的設計與實現(xiàn)(論文+源碼+視頻)-18.jpg (14.79 KB, 下載次數(shù): 5)
下載附件
2023-1-2 20:26 上傳
圖6-12 更新個人信息頁面
修改個人信息關鍵代碼如下:
public String updateUser(){
this.service.update(user); //更新用戶的信息
ActionContext.getContext().put(&#34;updatemessage&#34;, &#34;您的信息已經更新!&#34;);
return &#34;updateUser&#34;;}
6.4 后臺管理
6.4.1 后臺登錄
可以通過主頁面下方的鏈接打開后臺管理的登錄頁面,后臺登錄頁面需要輸入管理員賬號和密碼,如果用戶名和密碼錯誤則不能登錄,只有輸入正確的管理員賬號和密碼才能登錄到后臺主頁面。后臺登錄頁面如圖6-13所示。
基于WEB的二手交易平臺的設計與實現(xiàn)(論文+源碼+視頻)-19.jpg (49.69 KB, 下載次數(shù): 6)
下載附件
2023-1-2 20:26 上傳
圖6-13 后臺登錄頁面
6.4.2 后臺主頁面
輸入正確的管理員賬號和密碼后,打開后臺關鍵的主頁面,主頁上主要顯示此網上商城開發(fā)工具的介紹,左側有快捷功能,上方有列表用于選擇各個操作。點擊退出即可退出后臺管理頁面返回登錄頁面。后臺主頁面如圖6-14所示。
基于WEB的二手交易平臺的設計與實現(xiàn)(論文+源碼+視頻)-20.jpg (57.47 KB, 下載次數(shù): 6)
下載附件
2023-1-2 20:26 上傳
圖6-14 后臺管理主頁面
6.4.3 新增商品種類
新增商品種類,填寫商品種類名稱,提交便可增加一種新的商品種類。新增商品種類頁面如圖6-15所示。
基于WEB的二手交易平臺的設計與實現(xiàn)(論文+源碼+視頻)-21.jpg (38.89 KB, 下載次數(shù): 5)
下載附件
2023-1-2 20:26 上傳
圖6-15 新增商品種類頁面
6.4.4 商品種類列表
管理員可以查看商品種類的列表。商品種類列表頁面如圖6-16所示。
基于WEB的二手交易平臺的設計與實現(xiàn)(論文+源碼+視頻)-22.jpg (60.92 KB, 下載次數(shù): 6)
下載附件
2023-1-2 20:26 上傳
圖6-16 商品種類列表頁面
6.4.5 新增商品
新增商品可以填寫商品的名稱、商品編號、選擇商品種類、填寫生產廠家、上傳圖片、添加商品描述、商品原價格、商城銷售價格、商品總數(shù)量。新增商品頁面如圖6-17所示。
基于WEB的二手交易平臺的設計與實現(xiàn)(論文+源碼+視頻)-23.jpg (53.23 KB, 下載次數(shù): 5)
下載附件
2023-1-2 20:26 上傳
圖6-17 新增商品頁面
新增商品主要代碼如下:
public String addCommodity(){
CommodityClass com= commodityClassService.findCommodityClassByName (commodity.getCommodityClass().getCommodityClassName()); //獲得商品種類信息
commodity.setCommodityClass(com); //設置商品種類
List<Commodity> comFindname = this.service.findCommodityByName (commodity.getCommodityName()); //查詢該商品是否存在
if(comFindname.size()==0){
this.service.save(this.commodity); //保存商品信息
ActionContext.getContext().put(&#34;addComessage&#34;, commodity.getCommodityName() +&#34;添加成功&#34;);}
else {
ActionContext.getContext().put(&#34;addComessage&#34;, commodity.getCommodity Name() +&#34;已經存在,請重新填寫商品信息!&#34;);
return &#34;addCommodity&#34;;}}
6.4.6 商品列表
管理員可以查看商品的列表。商品列表頁面如圖6-18所示。
基于WEB的二手交易平臺的設計與實現(xiàn)(論文+源碼+視頻)-24.jpg (43.46 KB, 下載次數(shù): 6)
下載附件
2023-1-2 20:26 上傳
圖6-18 商品列表頁面
6.4.7 訂單列表
管理員可以查看訂單列表,顯示的內容包括:訂單編號、用戶是否已經付款、是否已經發(fā)貨、總金額、可以進行訂單發(fā)貨操作等。訂單列表頁面如圖6-19所示.
基于WEB的二手交易平臺的設計與實現(xiàn)(論文+源碼+視頻)-25.jpg (66.69 KB, 下載次數(shù): 5)
下載附件
2023-1-2 20:26 上傳
圖6-19 訂單列表頁面
6.4.8 訂單條件查詢
輸入訂單的條件可以查詢訂單,用于管理員來查詢符合條件的訂單信息。訂單條件查詢頁面如圖6-20所示。
基于WEB的二手交易平臺的設計與實現(xiàn)(論文+源碼+視頻)-26.jpg (32.98 KB, 下載次數(shù): 5)
下載附件
2023-1-2 20:26 上傳
圖6-20 訂單條件查詢頁面
6.4.9 用戶列表
用戶列表包括所有用戶的信息,顯示的內容有:用戶的姓名、聯(lián)系電話、住址、郵寄地址、刪除用戶等。用戶列表頁面如圖6-21所示。
基于WEB的二手交易平臺的設計與實現(xiàn)(論文+源碼+視頻)-27.jpg (27.05 KB, 下載次數(shù): 4)
下載附件
2023-1-2 20:26 上傳
圖6-21 用戶列表頁面
7 系統(tǒng)壓力測試
7.1 系統(tǒng)壓力測試工具及環(huán)境
本系統(tǒng)測試使用Apache Jmeter工具,這是由Apache組織開發(fā)的基于java的測試工具。Apache JMeter是開源而且免費的測試工具,它是可以對利用HTTP或FTP服務器的應用程序進行測試的工具,因此,選用Apache Jmeter作為網上商城系統(tǒng)的測試工具非常適合。下載Jmeter,打開bin目錄的JMeter.jar,啟動JMeter。JMeter主頁面如圖7-1所示。
基于WEB的二手交易平臺的設計與實現(xiàn)(論文+源碼+視頻)-28.jpg (73.92 KB, 下載次數(shù): 4)
下載附件
2023-1-2 20:26 上傳
圖7-1 JMeter主頁面
系統(tǒng)測試環(huán)境是系統(tǒng)在何種配置的服務器中進行的測試如表7-1所示。
表7-1 系統(tǒng)測試環(huán)境
操作系統(tǒng): | Windows XP Professional SP3 | 處理器: | AMD Sempron(tm) M100 | 內存: | 2G | 測試工具: | Apache Jmeter | 7.2 錄制測試過程
7.2.1 建立線程組
線程組用于指定運行的線程數(shù)和等候周期。每個線程模擬一個用戶,而Ramp-Up Period(in-seconds)用于指定創(chuàng)建全部線程的時間。設置200個用戶同時訪問,在5秒之內全部訪問登錄頁面,登錄系統(tǒng)。循環(huán)次數(shù)則代表執(zhí)行的次數(shù)。建立線程組頁面如圖7-2所示。
基于WEB的二手交易平臺的設計與實現(xiàn)(論文+源碼+視頻)-29.jpg (35.93 KB, 下載次數(shù): 5)
下載附件
2023-1-2 20:26 上傳
圖7-2 建立線程組頁面
7.2.2 建立HTTP請求默認值
在線程組下新建“HTTP請求默認值”同時配置其參數(shù):服務器地址,端口號,訪問協(xié)議。建立HTTP請求默認值頁面如圖7-3所示。
基于WEB的二手交易平臺的設計與實現(xiàn)(論文+源碼+視頻)-30.jpg (58.64 KB, 下載次數(shù): 5)
下載附件
2023-1-2 20:26 上傳
圖7-3 建立HTTP請求默認值頁面
7.2.3 設置代理服務器
在工作臺下設置HTTP代理服務器,設置Global Settings(端口號),Test plan content(目標控制器)選擇上面建立的線程組,添加排除模式,以免在錄制過程中錄制了不需要的圖片,腳本等。工作臺設置HTTP代理服務器頁面如圖7-4所示。
基于WEB的二手交易平臺的設計與實現(xiàn)(論文+源碼+視頻)-31.jpg (76.93 KB, 下載次數(shù): 5)
下載附件
2023-1-2 20:26 上傳
圖7-4 工作臺設置HTTP代理服務器頁面
配置好以后,設置瀏覽器的HTTP訪問代理,用于用戶的訪問。瀏覽器設置HTTP代理服務器頁面如圖7-5所示。
基于WEB的二手交易平臺的設計與實現(xiàn)(論文+源碼+視頻)-32.jpg (39.96 KB, 下載次數(shù): 4)
下載附件
2023-1-2 20:26 上傳
圖7-5 瀏覽器設置HTTP代理服務器頁面
瀏覽器端口號一定要與圖8-4配置的端口號一致。啟動JMeter的腳本錄制。打開瀏覽器,進行一次登錄退出操作。在線程組后會顯示登錄和退出所訪問的action。錄制完成頁面如圖7-6所示。
基于WEB的二手交易平臺的設計與實現(xiàn)(論文+源碼+視頻)-33.jpg (83.35 KB, 下載次數(shù): 4)
下載附件
2023-1-2 20:26 上傳
圖7-6 錄制完成頁面
7.3 測試設置及啟動
7.3.1 設置登錄參數(shù)
在用戶登錄的action中,可以為用戶名和密碼進行參數(shù)化設置,測試的用戶為testuser1到testuser201,測試之前請確認數(shù)據(jù)庫中的用戶表已經有這些用戶名信息。用戶名和密碼進行參數(shù)化設置頁面如圖7-7所示。
基于WEB的二手交易平臺的設計與實現(xiàn)(論文+源碼+視頻)-34.jpg (76.54 KB, 下載次數(shù): 5)
下載附件
2023-1-2 20:26 上傳
圖7-7 用戶名和密碼進行參數(shù)化設置頁面
用戶名和密碼的數(shù)據(jù)是從本地f盤下的文件login.txt中讀取的,用戶名和密碼格式如圖7-8所示。
基于WEB的二手交易平臺的設計與實現(xiàn)(論文+源碼+視頻)-35.jpg (40.23 KB, 下載次數(shù): 5)
下載附件
2023-1-2 20:26 上傳
圖7-8 用戶名和密碼格式
7.3.2 啟動測試
在啟動測試前,確認已經添加好監(jiān)聽器:聚合報告、用表格察看結果、圖形報告和查看結果樹,用于在測試結束后察看結果。然后點擊運行按鈕,啟動測試,等待測試結束。
7.4 測試結果
7.4.1 系統(tǒng)壓力測試聚合報告
聚合報告是整個測試過程中的數(shù)據(jù)反映。其中參數(shù)說明:Lable是測試項目名稱,Samples是多少個訪問實例,Average是平均相應時間,Median是相應時間中間值,90%Line指90%的實例的相應時間,Min最小響應時間,Max最大響應時間,Error%出錯率,Throughput是每秒完成的實例也就是系統(tǒng)的吞吐量,最后一項為每秒傳送的數(shù)據(jù)量。系統(tǒng)壓力測試聚合報告頁面如圖7-9所示。
基于WEB的二手交易平臺的設計與實現(xiàn)(論文+源碼+視頻)-36.jpg (56.13 KB, 下載次數(shù): 5)
下載附件
2023-1-2 20:26 上傳
圖7-9 系統(tǒng)壓力測試聚合報告頁面
7.4.2 系統(tǒng)壓力測試圖形結果
圖形結果可以更加形象并且直觀地看到測試的結果。主要參數(shù)有:樣本數(shù)目是總共發(fā)送到服務器的請求數(shù)。最新樣本是代表時間的數(shù)字,是服務器響應最后一個請求的時間。吞吐量是服務器每分鐘處理的請求數(shù)。 平均值是總運行時間除以發(fā)送到服務器的請求數(shù)。中間值是代表時間的數(shù)字,有一半的服務器響應時間低于該值而另一半高于該值。偏離表示服務器響應時間變化、離散程度測量值的大小,也就是數(shù)據(jù)的分布。
在這些結果中可以看出,網上商城系統(tǒng)既可以滿足一般商家的需要,又可以滿足適量的用戶同時登錄,如果需要滿足更多用戶的登錄,購物等操作,可以根據(jù)具體的需要對系統(tǒng),服務器進行優(yōu)化配置??傮w上本系統(tǒng)是可以滿足現(xiàn)有需求的。
結 論
這次的軟件設計是先對網絡購物系統(tǒng)做需求分析,對需要做出來的功能和目標做了一個闡述,之后進行的設計,最后實現(xiàn)了一個簡易的二手交易商城系統(tǒng)的設計。該設計已Java語言為主,用Eclipse環(huán)境完成,MySQL作為我的數(shù)據(jù)庫,同時用到了Tomcat服務器。這個設計分為兩個部分,分別是前臺用戶模塊和后臺管理模塊。前臺用戶可以操作的模塊如下:查看商品,登錄注冊,購買商品,操作購物車,修改個人信息;后臺管理員可以操作的模塊如下:商品種類的增刪改查,商品的增刪改查,查詢和更改用戶信息。通過不斷調試,運行和測試,系統(tǒng)現(xiàn)在可以正常的運行。因為這是我第一次獨立完成開發(fā),系統(tǒng)不免有些簡易和不足,還需進一步的改善。
這個設計是利用網絡來進行一些簡單的交易,方便大家的生活。這次的軟件設計鍛煉了我的實際操作的能力。讓我對Java的應用和理解更加透徹。
1.在這次軟件設計中,我做了下面一些工作:
1)分析并且建設了二手交易商城系統(tǒng),探討了這個應用的背景和開發(fā)它的目的。
2)在軟件開發(fā)的過程中完成一些開發(fā)必須的步驟,例如需求分析,總體設計、詳細設計、系統(tǒng)測試等等。
3)在需求分析和總體設計完成后,決定使用什么技術,使用什么語言,使用哪種數(shù)據(jù)庫等等多個問題,最后在制定一個合理的,簡單有效的解決方案。此外還考慮到系統(tǒng)的可擴展性,實現(xiàn)整體的靈活性,為以后繼續(xù)開發(fā)或完善提供便利。
4)在整個開發(fā)系統(tǒng)的過程當中,隨著不斷的深入,依稀相關的數(shù)據(jù)材料,技術材料也在不停的匯集整合,形成一個完整的資料庫,對我以后的開發(fā)有很大的意義和影響。
2.通過完成這次軟件設計,我的各個方面都得到了很大的提升,自己也取得的很大的進步:
1)通過這次的軟件設計,我更加深入的了解了軟件開發(fā)的重要性,對于軟件開發(fā)有更近一步的認識。在整個軟件開發(fā)的過程中,代碼的編寫不是最重要的,重要的是前期的一些過程,例如需求分析,總體設計,詳細設計,系統(tǒng)測試等等,做好這些過程,程序編寫的也就變得很容易了。
2)在網絡購物系統(tǒng)開發(fā)過程中,我養(yǎng)成了一個做筆記的習慣,因為在整個的開發(fā)過程中,經常遇到一些問題,有的困難不容易解決,有的簡單易出錯,記下筆記后,那些簡單的問題解決起來的變得的更加容易,而那些困難的問題解決起來就更有經驗。這樣解決了在開發(fā)的過程中遇到相似的問題,每次都要浪費時間的問題,大大的節(jié)省了時間,也更容易讓我記住這些問題,避免下次再次出錯。
3)在這次的軟件開發(fā)的過程中,我認識到了軟件編寫時規(guī)范性的重要性,所以,代碼編寫要有一套規(guī)范的編寫準則。軟件的代碼不僅是給自己的看的,很多時候,其他人也要看你編寫的代碼。所以代碼的規(guī)范就很重要了,規(guī)范性的、可讀性高的代碼才更加可靠,容易被別人認可。
5)不僅是在軟件設計的研究中,而且在實際的開發(fā)中,都給了我很大的進步,這讓我認識到想要提高自己開發(fā)軟件的能力,就只有不斷地實踐和練習,只有在實踐中鍛煉的能力,才能真正的提升自己的能力。這次,本系統(tǒng)的開發(fā)已經完成,但是依舊可以繼續(xù)完善和改進它。
參考文獻
[1] 程南希. 基于 SSH 架構的在線購物管理系統(tǒng)的設計與實現(xiàn)[D]. 電子科技大學, 2011.
[2] 薩師煊,王珊.多數(shù)據(jù)庫系統(tǒng)概論[M].北京:高等教育出版社,2006.1-11.
[3] 王建明.計算機實驗室管理系統(tǒng)的設計與實現(xiàn)[J].計算機與信息技術,2007,15(11):74-75.
[4] 李春葆.Visual Fox Pro 6.0 高級編程[M].北京: 科學出版社,2001.1-70.
[5] 劉湘暉.多高校計算機實驗室綜合信息管理系統(tǒng)設計與實現(xiàn)[J].計算機光盤軟件與應用,2010,11(12):148.
[6] 杜波伊斯.MySQL技術內幕[M].第4版.人民郵電出版社,2011年07月.
[7] 楊海鷹,潘華.實驗室信息管理系統(tǒng)[M].北京: 化學工業(yè)出版社,2006.1-70.
[8] AR Hevner,ST Marcb. The Information Systems Research Cycle[J]. IEEE Computer,2003,9 (11):111-113.
[9] R Sandhu,V Bhamidpati,Q Munawer. The ARBAC 97 model for role-based administration of roles[J]. ACM Transactions on Information and System Security,1999, 8(1):105.
[10] B Regnell,P Runeson,C Wohlin. Towards integration of use case modeling and
usage-based testing[J]. Journal of Systems and Software,2000,12 (2):117-130.
[11] Young Jin Yu.Backup Metadata As Data: DPC-To Ierance to Commodity File System. Journal of information science and engineering,2011, 27(4):13-15.
[12] Anonymous. Red Gate Software; Red Gate Software&#39;s SQL Backup 5 Named 2008
Editor&#39;s Best Award Winner by SQL Server Magazine,Computer Technology
Journal 2008, 16(5):22-24.
----------------------------- |
|