版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、遼寧石油化工大學(xué)本科畢業(yè)論文Undergraduate Final Project Description of LSHU題題 目目基于 Android 手機(jī)商城客戶端的開發(fā)與實現(xiàn)TITLE Development and Implementation of Mall Client Based on the Android Mobile Phone學(xué) 院計算機(jī)與通信工程學(xué)院SchoolSchool of Computer and Communication Engineering專業(yè)班級計算機(jī)科學(xué)與技術(shù) 算機(jī) 1002 班Major&ClassClass 1002, Computer Scie
2、nce and Technology姓 名張少陽NameZhang Shaoyang指導(dǎo)教師丁曉光SupervisorDing Xiaoguang2014 年 6 月 12 日論文獨創(chuàng)性聲明論文獨創(chuàng)性聲明本人所呈交的論文,是指導(dǎo)教師的指導(dǎo)下,獨立進(jìn)行研究和開發(fā)工作所取得的成果。除文中已特別加以注明引用的內(nèi)容外,論文中不包含任何其他個人或集體已經(jīng)發(fā)表或撰寫過的研究成果。對本文的工作做出重要貢獻(xiàn)的個人和集體,均已在文中以明確方式標(biāo)明并致謝。本人完全意識到本聲明的法律結(jié)果由本人承擔(dān)。特此聲明。論文作者(簽名): 年 月 日1摘 要隨著 Internet 的不斷發(fā)展,網(wǎng)上購物人群數(shù)量的增多,網(wǎng)絡(luò)在人們
3、的生活中已經(jīng)占據(jù)了不可替代的地位?;谑謾C(jī)端的在線購物系統(tǒng)能使大眾隨時隨地選購自己喜歡的商品,Android 平臺以其獨有的開放性被廣泛應(yīng)用于智能手機(jī),平板電腦等領(lǐng)域。本設(shè)計是基于 Android 手機(jī)商城客戶端的設(shè)計與實現(xiàn),為了能夠具備良好的可擴(kuò)展性和可維護(hù)性,設(shè)計分為了客戶端和服務(wù)端兩部分,同時開發(fā)過程采用 B/S 結(jié)構(gòu)和 C/S 結(jié)構(gòu)相結(jié)合,使用 Eclipse+ADT 進(jìn)行客戶端的應(yīng)用程序開發(fā)實現(xiàn),基于Java 語言、Android SDK 和 Servlet 技術(shù),Servlet 加強(qiáng)了 Web 服務(wù)端的功能,利用JDBC 實現(xiàn)了數(shù)據(jù)庫的連接。系統(tǒng)主要實現(xiàn)的功能包括:用戶注冊賬號及登
4、錄,瀏覽商品,選購商品,購物車,查看訂單等功能;管理員具有管理權(quán)限,包括修改、刪除用戶信息,添加、修改、刪除商品信息,訂單的處理等功能;實現(xiàn)對數(shù)據(jù)庫中的商品進(jìn)行增,刪,改,查的功能。關(guān)鍵字:Android,B/S 結(jié)構(gòu),C/S 結(jié)構(gòu),Android SDK,Servlet.2AbstractWith the continuous development of the Internet, the increase in the number of online shoppers, the network in peoples lives has occupied an irreplaceable
5、 position. Based on the public side of the phone to make online shopping system to buy their favorite products anytime, Android platform, with its unique openness is widely used in smart phones, tablet PCs and other fields. This design is the design and implementation of Android-based mobile phone s
6、hop client, in order to have good scalability and maintainability, design is divided into client and server in two parts, while the development process using B / S structure and the C / S structure combined use Eclipse + ADT for client application development to achieve, based on the Java language,
7、Android SDK and Servlet technologies, Servlet enhanced Web server functionality, the use of JDBC database connectivity achieved. System main features include: user registration account and log in, browse merchandise, buy goods, shopping cart, view orders and other functions; administrator has admini
8、strative privileges, including modifying, deleting user information, add, modify, delete product information, order processing and other functions; realization of commodities in the database to add, delete, change, check function.Key words: Android, B/S mode ,C/S mode, Android SDK,Servlet.目錄目錄II1 引引
9、 言言.11.1 研究背景.11.2 國內(nèi)外現(xiàn)狀.21.2.1 國外現(xiàn)狀.21.2.2 國內(nèi)現(xiàn)狀.31.3 研究的目的和意義.31.3.1 研究的目的.31.3.2 研究的意義.42 需求分析需求分析.52.1 功能需求分析.52.2 開發(fā)環(huán)境.62.3 可行性研究.72.3.1 技術(shù)可行性.72.3.2 經(jīng)濟(jì)可行性.82.3.3 運行可行性.83 系統(tǒng)總體設(shè)計系統(tǒng)總體設(shè)計.93.1 總體工作流程設(shè)計.93.2 總體功能設(shè)計.103.3 數(shù)據(jù)庫需求分析.113.4 數(shù)據(jù)庫設(shè)計.114 詳細(xì)設(shè)計及實現(xiàn)過程詳細(xì)設(shè)計及實現(xiàn)過程.164.1 系統(tǒng)登錄界面設(shè)計與實現(xiàn).16III4.2 系統(tǒng)模塊設(shè)計.17
10、5 系統(tǒng)測試系統(tǒng)測試.285.1 測試步驟.285.2 測試報告.285.3 測試結(jié)果.306 結(jié)結(jié) 論論.31致致 謝謝.32參考文獻(xiàn)參考文獻(xiàn).33基于 Android 手機(jī)商城客戶端的開發(fā)與實現(xiàn)21 引 言 隨著社會科技的進(jìn)步,人類知識總量的增長不斷加快,以及市場競爭的日益激烈,人們對信息的認(rèn)識產(chǎn)生了根本性變化?;谝苿踊ヂ?lián)網(wǎng)這個全新的時代背景,人們?nèi)粘I暇W(wǎng)的主要通道將是手機(jī)。移動電子商務(wù)未來的發(fā)展?jié)摿κ俏〇|商城、當(dāng)當(dāng)網(wǎng)以及淘寶等電子商務(wù)企業(yè)進(jìn)入這一領(lǐng)域的主要原因。 隨著移動通信的發(fā)展及互聯(lián)網(wǎng)向移動終端的普及,網(wǎng)絡(luò)和用戶對移動終端的要求越來越高,移動終端不再僅是通訊網(wǎng)絡(luò)的終端,還將成為
11、互聯(lián)網(wǎng)的終端。Android是一套真正意義上的開放性的移動設(shè)備綜合平臺,Android 是由 Linux+Java 構(gòu)成的開源軟件,允許所有廠商和個人在其基礎(chǔ)上進(jìn)行開發(fā),因此,Android 系統(tǒng)將是未來移動終端的主流,而基于 Android 終端的網(wǎng)上購物系統(tǒng)也將被廣泛使用。 1.1 研究背景電子商務(wù)是指在互聯(lián)網(wǎng)(Internet) 、企業(yè)內(nèi)部網(wǎng)(Intranet)和增值網(wǎng)(VAN,Value Added Network)上以電子交易方式進(jìn)行交易活動和相關(guān)服務(wù)的活動,是傳統(tǒng)商業(yè)活動各環(huán)節(jié)的電子化、網(wǎng)絡(luò)化。電子商務(wù)包括電子貨幣交換、供應(yīng)鏈管理、電子交易市場、網(wǎng)絡(luò)營銷、在線事務(wù)處理、電子數(shù)據(jù)交換
12、(EDI) 、存貨管理和自動數(shù)據(jù)收集系統(tǒng)。在此過程中,利用到的信息技術(shù)包括:互聯(lián)網(wǎng)、外聯(lián)網(wǎng)、電子郵件、數(shù)據(jù)庫、電子目錄和移動電話。電子商務(wù)涵蓋了兩個方面:一是離不開互聯(lián)網(wǎng)這個平臺,沒有了網(wǎng)絡(luò),就稱不上為電子商務(wù);二是通過互聯(lián)網(wǎng)完成的是一種商務(wù)活動1。手機(jī)網(wǎng)上購物就是電子商務(wù)的一種表現(xiàn),由于上班族很少有閑暇時間去商場購物,而且現(xiàn)代的年輕人普遍有一種“懶惰”的心理,手機(jī)網(wǎng)上購物系統(tǒng)很好的解決了這些問題,現(xiàn)在基于移動手機(jī)終端的購物軟件有很多2,例如:淘寶,京東,當(dāng)3當(dāng)網(wǎng)等。1.2 國內(nèi)外現(xiàn)狀1.2.1 國外現(xiàn)狀2013 年,美國移動購物用戶滲透超六成,增長迅速,從 2012 年的 0.9 億人增加到
13、 1.2 億人,共增長了 10.7 個百分點,未來增長相對緩慢,艾瑞咨詢認(rèn)為,美國移動網(wǎng)購用戶數(shù)逐年增加,預(yù)計 2016 年在網(wǎng)購群體中的滲透率接近 90%,說明移動網(wǎng)購將會在美國成為購物群體中的主流渠道之一。去年,全球移動電商交易額接近 1.5 萬億美元,2017 年預(yù)計達(dá)到 3.2 萬億美元??v觀全球移動電子商務(wù)行業(yè)的發(fā)展,艾瑞咨詢認(rèn)為,目前全球移動電商快速增長的直接原因取決于智能手機(jī)的廣泛普及,以及越來越多的智能手機(jī)用戶喜愛網(wǎng)絡(luò)零售商提供的 App 或移動網(wǎng)頁。移動網(wǎng)購快速發(fā)展的原因具體來說:第一,智能手機(jī)具備輕便、不限時間地點即可運用的特性,用戶可隨時進(jìn)行網(wǎng)上搜索或打發(fā)碎片化時間;第二
14、,運營商推出的網(wǎng)絡(luò)速度不斷加快,也為移動用戶享受順暢的網(wǎng)絡(luò)購物提供了催化條件,這些因素進(jìn)一步推動了用戶對移動購物的實踐;第三,新興的 App或移動站點帶來的移動購物體驗逐步受到用戶的認(rèn)可,因此越來越多的傳統(tǒng)企業(yè)或電子商務(wù)企業(yè)加入移動購物商城的建設(shè)和推廣中,進(jìn)一步推動了移動電商行業(yè)的發(fā)展。目前,90%的日本,韓國手機(jī)用戶都已經(jīng)習(xí)慣在手機(jī)上消費,日本裝有智能卡的手機(jī)在自動售貨機(jī)購物,甚至是購買大米、洗衣粉這樣的日常生活用品。在最早開通 3G 服務(wù)的日本,移動電子商務(wù)交易額已經(jīng)在電子商務(wù)總體交易額的 40%左右。移動電子商務(wù)的發(fā)展,為日本眾多商業(yè)企業(yè)提供了新的銷售渠道,幾乎所有的網(wǎng)上經(jīng)營者都同時經(jīng)營
15、自己的移動商鋪。相比傳統(tǒng)的互聯(lián)網(wǎng)購物,消費者用手機(jī)購4物更加便捷、私密、互動,手機(jī)購物已經(jīng)成為日本、韓國等國“快時尚”標(biāo)志,深受城市年輕人喜愛。1.2.2 國內(nèi)現(xiàn)狀移動互聯(lián)網(wǎng)與生俱來的便利性為人們提供了一個隨時隨地進(jìn)行交換信息和交流溝通的平臺,潛移默化地影響著人們的日常生活方式。隨著移動互聯(lián)網(wǎng)大肆興起以及智能手機(jī)、平板電腦等移動電子產(chǎn)品的日益普及,作為人們互聯(lián)網(wǎng)生活中重要一環(huán),網(wǎng)絡(luò)購物的形式也逐漸邁入移動平臺,衍生出的移動購物也日益流行開來。隨著人們生活節(jié)奏逐漸加快,移動購物的推廣無疑使網(wǎng)購變得更為輕松、自如。根據(jù)易觀智庫發(fā)布的2012 年第 4 季度中國手機(jī)購物市場季度監(jiān)測報告數(shù)據(jù)顯示,20
16、11 年四季度中國手機(jī)購物市場規(guī)模達(dá) 196 億元,2012 年全年中國手機(jī)購物市場規(guī)模達(dá) 600.5 億元,較 2011 年同比增長 488.7%。近五倍的同比增長值指明了電商未來的發(fā)展方向,飛速的發(fā)展表明,移動購物的黃金時代即將來臨。1.3 研究的目的和意義1.3.1 研究的目的開發(fā)基于 Android 手機(jī)商城客戶端的網(wǎng)上購物系統(tǒng),用戶可以通過 Android 系統(tǒng)手機(jī)注冊用戶并登錄網(wǎng)上商城,進(jìn)行商品的查詢和購買等功能,同時在服務(wù)端以管理員權(quán)限登錄可以對客戶端發(fā)出的請求作出響應(yīng)。該系統(tǒng)使得用戶不必被限制在電腦前進(jìn)行購物或消費,只要用戶擁有 Android 手機(jī)就可以隨時隨地的購買商品。這
17、樣方便了人們的生活,為人們節(jié)省了大量的時間,上班族們可以在路上,公交上等地購置自己所需要的商品。在高節(jié)奏生活的現(xiàn)代社會,怎樣能節(jié)約時間,怎樣能高效率的應(yīng)用時間,已經(jīng)5成為現(xiàn)在人們思考的首要問題。基于 Android 平臺的網(wǎng)上購物商城正好符合現(xiàn)代人的需求,既節(jié)約下了購物的時間,又使得人們更好的利用一些在等待的時間,從而沒有了時間和空間的限制,購物變得更加便捷,更加人性化了。1.3.2 研究的意義隨著經(jīng)濟(jì)的發(fā)展,手機(jī)網(wǎng)上購物系統(tǒng)逐漸大放光彩。對于消費者來說,可以在任意地點逛商店,訂貨不受時間、地點的限制;獲得較大量的商品信息,可以買到當(dāng)?shù)貨]有的商品;網(wǎng)上支付較傳統(tǒng)拿現(xiàn)金支付更加安全可避免現(xiàn)金丟失
18、或遭到搶劫;從訂貨、買貨到貨物上門無需親臨現(xiàn)場既省時,又省力;由于網(wǎng)上商品省去租店面、招雇員及儲存保管等一系列費用,其價格較一般商場的同類商品更物美價廉;可以保護(hù)個人隱私,很多人喜歡在網(wǎng)上購買成人用品,去實體店購買顯得尷尬難堪。對于商家來說,由于網(wǎng)上銷售庫存壓力較小、經(jīng)營成本低、經(jīng)營規(guī)模不受場地限制等。在將來會有更多的企業(yè)選擇網(wǎng)上銷售,通過互聯(lián)網(wǎng)對市場信息的及時反饋適時調(diào)整經(jīng)營戰(zhàn)略,以此提高企業(yè)的經(jīng)濟(jì)效益和參與國際競爭的能力。再次,對于整個市場經(jīng)濟(jì)來說:這種新型的購物模式可在更大的范圍內(nèi)、更廣的層面上以更高的效率實現(xiàn)資源配置。綜上可以看出,手機(jī)網(wǎng)上購物突破了傳統(tǒng)商務(wù)的障礙,無論對消費者、企業(yè)還
19、是市場都有著巨大的吸引力和影響力,在新經(jīng)濟(jì)時期無疑是達(dá)到“多贏”效果的理想模式3。62 需求分析2.1 功能需求分析系統(tǒng)主要功能分為:客戶端功能,web 服務(wù)端(管理員管理)功能兩大模塊4,5。客戶端功能:1) 系統(tǒng)為用戶提供注冊賬號功能,用戶按要求輸入正確的信息,點擊提交,即可注冊成功。2) 系統(tǒng)登陸功能,用戶輸入已有的用戶名和與之匹配的密碼,點擊登錄即可登錄客戶端。3) 商品瀏覽功能,客戶端通過點擊主頁面的購物按鈕,就可以瀏覽到已錄入的各個商品的信息。4) 購物車功能,用戶對想購買的商品,在商品后的框格內(nèi)打上對號,選擇要購買的數(shù)量,點擊加入購物車,則所要購買的商品就被添加到購物車?yán)铩?)
20、訂單功能,用戶登陸之后,點擊主頁面的訂單按鈕,可查看歷史訂單記錄。Web 服務(wù)端功能:商城管理員專用管理平臺,可以提供管理員登錄,修改密碼的功能,也提供查看注冊的用戶信息,刪除用戶,錄入商品信息、查看訂單信息,并給出訂單處理的功能。1) 管理員登錄功能,管理員通過輸入正確的賬號和密碼進(jìn)行登錄。2) 用戶管理功能,管理員管理用戶信息,查看用戶信息,刪除用戶等操作。3) 商品信息管理功能,錄入商品信息,可以對商品進(jìn)行添加、修改、刪除等功能。74) 訂單信息管理功能,查看用戶訂單信息,可以對訂單進(jìn)行發(fā)貨等操作。2.2 開發(fā)環(huán)境Android 是基于 Linux 內(nèi)核的軟件平臺和操作系統(tǒng),是 Goog
21、le 在 2007 年 11 月 5 日公布的手機(jī)系統(tǒng)平臺,早期由 Google 開發(fā),后由開放手機(jī)聯(lián)盟(Open Handset Alliance)開發(fā)。它采用軟件堆層(software stack,又名以軟件疊層)的架構(gòu),主要分為 3 部分。低層以 Linux 內(nèi)核工作為基礎(chǔ),只提供基本功能;其他的應(yīng)用軟件則由各公司自行開發(fā),以 Java 作為編寫程序的一部分6。與 iPhone 相似,Android 采用 WebKit 瀏覽器引擎,具備觸摸屏、高級圖形顯示和上網(wǎng)功能,用戶能夠在手機(jī)上查看電子郵件、搜索網(wǎng)址和觀看視頻節(jié)目等,比iPhone 等其他手機(jī)更強(qiáng)調(diào)搜索功能,界面更強(qiáng)大,可以說是一種
22、融入全部 Web 應(yīng)用的單一平臺7。其大優(yōu)勢特色:1) 開放性:在優(yōu)勢方面,Android平臺首先就是其開放性,開發(fā)的平臺允許任何移動終端廠商加入到Android聯(lián)盟中來。 8,92) 豐富的硬件選擇:這一點還是與Android平臺的開放性相關(guān),由于Android的開放性,使其硬件的支持較多,故擁有了更多的硬件選擇。3) 不受任何限制的開發(fā)商:Android平臺提供較廣的平臺給第三方開發(fā)商,因此不受框架束縛。4) 無縫結(jié)合的Google應(yīng)用:Google公司本身擁有的應(yīng)用能夠完美無縫的與Android平臺結(jié)合。 10軟件類需求:1) 操作系統(tǒng):windows 7及其以上操作系統(tǒng)。82) 數(shù)據(jù)庫
23、:Mysql 5.03) Web服務(wù)端管理:Tomcat 6.x以上4) 客戶端請求服務(wù)器:Tomcat 6.x以上5) 后臺管理開發(fā)平臺:MyEclipse 6) 客戶端開發(fā)平臺:Android SDK + Java JDK1.6 + Eclipse11 7) 后臺管理開發(fā)語言包:JDK1.6。8) 數(shù)據(jù)庫管理:Navicat for MySQL根據(jù)系統(tǒng)需要,在數(shù)據(jù)庫的選擇上,選用最流行的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)Mysql,將數(shù)據(jù)保存在不同的表中,而不是將所有數(shù)據(jù)放在一個大倉庫內(nèi),這樣就增加了速度并提高了靈活性,更有利于系統(tǒng)的開發(fā)。Tomcat 是一個輕量級應(yīng)用服務(wù)器,占用系統(tǒng)資源少,擴(kuò)展性好,
24、性能穩(wěn)定,是現(xiàn)在比較流行的 Web 應(yīng)用服務(wù)器,MyEclipse 集成了很多 eclipse 沒有的插件,對于 Web 的開發(fā)有很好的幫助。Eclipse 是開發(fā) Android 系統(tǒng)的相對較好,穩(wěn)定的開發(fā)工具。此次 Java 開發(fā)環(huán)境沿用的是一直很熟悉的 JDK1.6,在 Android 方面用的是最先版本 SDK。電腦完全可以支持本次設(shè)計的開發(fā)。2.3 可行性研究2.3.1 技術(shù)可行性Android 以 Java 為編程語言,使接口到功能,都有層出不窮的變化,其中Activity 等同于 J2ME 的 MIDlet,一個 Activity 類(class)負(fù)責(zé)創(chuàng)建視窗(window) ,
25、一個活動中的 Activity 就是在 foreground(前景)模式,背景運行的程序叫做Service。兩者之間通過由 ServiceConnection 和 AIDL 連結(jié),達(dá)到復(fù)數(shù)程序同時運行的效果12。在程序設(shè)計中用到了 Java 核心類庫中的大量的類,該系統(tǒng)軟件方面采用9了如今比較流行的開發(fā)工具 MyEclipse 來進(jìn)行開發(fā)管理平臺的設(shè)計,采用 Eclipse來進(jìn)行客戶端的開發(fā)設(shè)計。服務(wù)端應(yīng)用 Servlet 技術(shù),加強(qiáng)了 Web 服務(wù)器的功能。Android 的應(yīng)用程序開發(fā)還是和 Java 開發(fā)有一定區(qū)別,所以需要一個 Google 提供的 Android SDK13。本系統(tǒng)用
26、 MySQL 數(shù)據(jù)庫進(jìn)行數(shù)據(jù)存儲,使用 JDBC 訪問數(shù)據(jù)庫。當(dāng)應(yīng)用程序發(fā)出一個通訊錄數(shù)據(jù)的查詢,會涉及到一個 URL 查詢的形式,應(yīng)用程序可以很容易地添加,刪除和取代意圖而 URL 使其聯(lián)系在一起工作14。2.3.2 經(jīng)濟(jì)可行性本設(shè)計的開發(fā)在經(jīng)濟(jì)上是完全可行的,開發(fā)該系統(tǒng)的 Eclipse 和 MySQL 軟件能夠從網(wǎng)上直接下載應(yīng)用,不需要任何經(jīng)費,而且系統(tǒng)又是個人獨立完成,可以節(jié)省很多花費,同時也可提高自己的動手能力。2.3.3 運行可行性本系統(tǒng)為一個簡單的手機(jī)網(wǎng)上購物系統(tǒng),所消耗的資源比較少,電腦配置能夠支持開發(fā)軟件的正常運行,又由于開發(fā)環(huán)境的搭建成功,本系統(tǒng)運行上是可行的.103 系統(tǒng)
27、總體設(shè)計此設(shè)計實現(xiàn)了客戶端和服務(wù)端兩部分,同時采用 B/S 結(jié)構(gòu)和 C/S 結(jié)構(gòu)相結(jié)合15,使用 Eclipse+ADT 進(jìn)行應(yīng)用程序開發(fā)實現(xiàn)的客戶端,用 Java 語言進(jìn)行編碼及使用了Android SDK 開發(fā)工具包。本系統(tǒng)的實現(xiàn)需要客戶端與服務(wù)端之間大量的交互,很多的業(yè)務(wù)邏輯功能實現(xiàn)都是由客戶端向服務(wù)端發(fā)送請求完成的,因此客戶端與服務(wù)端之間的通信是非常重要的環(huán)節(jié),因此 Web 服務(wù)端采用的是 Servlet 編程技術(shù),增強(qiáng)服務(wù)端功能,Servlet 更注重邏輯業(yè)務(wù)的實現(xiàn)16。使用 JDBC 實現(xiàn)對數(shù)據(jù)庫的連接。3.1 總體工作流程設(shè)計11 圖 3.1 系統(tǒng)工作流程圖工作流程:已有用戶名密
28、碼的可直接登錄,未注冊的需先注冊賬號。管理員登錄進(jìn)行商品錄入功能,存儲到數(shù)據(jù)庫中,用戶登錄后可直接訪問數(shù)據(jù)庫進(jìn)行商品瀏覽及選購,加入購物車結(jié)賬后,管理員會根據(jù)訂單信息選擇是否發(fā)貨。流程如上圖3.1 所示。3.2 總體功能設(shè)計該系統(tǒng)分為客戶端和服務(wù)端:客戶端主要是用戶的注冊、登錄、瀏覽商品,選購商品,加入購物車,查看訂單;服務(wù)端主要是管理員對用戶、商品、訂單的管理,在整個系統(tǒng)中他們具有不同的功能和權(quán)限。如下圖 3.2 所示。商城系統(tǒng)客戶端服務(wù)端用戶注冊用戶登陸商品瀏覽加入購物車訂單查詢管理員登錄商品管理訂單管理用戶信息用戶名密碼電話住址價格商品名圖片12圖 3.2 總體功能圖3.3 數(shù)據(jù)庫需求分
29、析基于功能需求中的各項功能,總結(jié)出數(shù)據(jù)庫所需要的大體有 4 張表。分別是:管理員表,用戶表,商品表,訂單表等。用戶表需要包含用戶昵稱,密碼,電話等較為詳細(xì)的信息;商品表需要包含商品名稱,數(shù)量,價格等商品所應(yīng)具備的基本信息;訂單表需要包含訂單編號,用戶昵稱,用戶地址,訂單狀態(tài)等詳細(xì)信息。3.4 數(shù)據(jù)庫設(shè)計本系統(tǒng)采用的是 Mysql 數(shù)據(jù)庫,同時應(yīng)用了 Navicat for MySQL 開發(fā)工具,它是一款強(qiáng)大的 MySQL 數(shù)據(jù)庫管理和開發(fā)工具,使用了極好的圖形用戶界面(GUI) ,可以用一種安全和更為容易的方式快速和容易地創(chuàng)建、組織、存取和共享信息。 用戶可完全控制 MySQL 數(shù)據(jù)庫和顯示不
30、同的管理資料,包括一個多功能的圖形化管理用戶和訪問權(quán)限的管理工具,方便將數(shù)據(jù)從一個數(shù)據(jù)庫轉(zhuǎn)移到另一個數(shù)據(jù)庫中。管理員登錄表:管理員通過登錄進(jìn)入服務(wù)端,管理員具有對用戶,商品,訂單等進(jìn)行管理的權(quán)限。如下表 3.1 所示表 3.1 管理員登錄表名類型長度小數(shù)點允許空值idint1001useNamevarchar300passwordvarchar300數(shù)量13用戶注冊表:沒有賬號的用戶需要先注冊一個賬號并通過賬號登錄客戶端,注冊時用戶需要填寫用戶名,密碼,電話,家庭地址。如下表 3.2 所示表 3.2 用戶注冊表名類型長度小數(shù)點允許空值idint1001useNamevarchar300pass
31、wordvarchar300phonevarchar300addressvarchar1000商品錄入表:管理員登錄后,可以添加商品,即商品的一些信息,如商品名,商品圖片等。如下表 3.3 表所示。表 3.3 商品錄入表名類型長度小數(shù)點允許空值idint1101gnamevarchar300gurlvarchar100014購物車表:用戶選擇選購的商品,記錄商品名,購買數(shù)量。如下表 3.4 表所示。表 3.4 購物車表名 類型長度小數(shù)點允許值id int1101userid int110goodsNamevarchar300 gcountint100 .訂單表:記錄用戶購買商品的相關(guān)信息,以及
32、訂單日期和是否發(fā)貨狀態(tài)。如下表 3.5 表所示。 表 3.5 訂單表名類型長度小數(shù)點 允許空值1idint110 gprice double 0 0 gcount int 0 0 15myidtotleintdouble11000phonevarchar500addressvarchar1000typevarchar100statevarchar100管理員管理用戶,商品,訂單,購物車四個方面。用戶主要包含了,用戶 ID,密碼,電話等屬性;商品主要包含商品 ID,價格等屬性;訂單主要包含訂單 ID,訂單日期等屬性;購物車主要包含商品名,商品數(shù)量等屬性。如下圖 3.3 E-R 圖所示:16174
33、 詳細(xì)設(shè)計及實現(xiàn)過程4.1 系統(tǒng)登錄界面設(shè)計與實現(xiàn)客戶端登錄界面:客戶通過用戶名密碼登錄。如圖 4.1 所示圖 4.1 客戶登錄界面18服務(wù)端登錄界面:管理員登錄服務(wù)端,擁有管理權(quán)限,執(zhí)行管理任務(wù)。如圖 4.2所示圖 4.2 管理員登錄界面4.2 系統(tǒng)模塊設(shè)計(1)用戶注冊:用戶輸入用戶名 usename,密碼 password,電話 phone 和地址address 進(jìn)行注冊,如下圖 4.3 所示:19 圖 4.3 客戶端用戶注冊界面(2)購物系統(tǒng)主頁面:這個頁面有三個選擇按鈕,點擊購物可以查看商品,并可以選擇所要夠買的商品,點擊購物車可以查看用戶已選擇加入的商品,點擊訂單查看訂單信息。如下
34、圖 4.4 所示: 圖 4.4 購物系統(tǒng)主頁主要代碼如下: super.onCreate(savedInstanceState); setTitle(無線購物系統(tǒng)-主頁面); setContentView(R.layout.main_menu); GridView gridview = (GridView) findViewById(R.id.gridview); gridview.setAdapter(new ImageAdapter(this); /把圖片按照一定的格式顯示到圖像上public View getView(int position, View convertView, Vie
35、wGroup parent) / 聲明圖片視圖 ImageView imageView;20 if (convertView = null) / 實例化圖片視圖 imageView = new ImageView(mContext); / 設(shè)置圖片視圖屬性 imageView.setLayoutParams(new GridView.LayoutParams(85, 85); imageView.setScaleType(ImageView.ScaleType.CENTER_CROP); imageView.setPadding(8, 8, 8, 8); else imageView = (I
36、mageView) convertView; / 設(shè)置圖片視圖圖片資源 imageView.setImageResource(mThumbIdsposition);(3)購物:瀏覽商品,根據(jù)用戶自己的需要選擇要買的商品及數(shù)量,如下 4.5圖所示:21圖 4.5 用戶購物界面主要代碼如下:private void setViews() lv = (ListView) findViewById(R.id.h_list_view);list = getDatas();adapter = new ImageSimpleAdapter(this, list, R.layout.message_list,
37、new String icon, name, price, count , new int R.id.ml_icon, R.id.listName, R.id.listPrice,R.id.listCount );lv.setAdapter(adapter);Declare declare = (Declare) getApplicationContext();int myid = declare.getId();System.out.println(myid = + myid);String url = HttpUtil.BASE_URL + GoodsListServlet;/ 查詢返回結(jié)
38、果String result = HttpUtil.queryStringForPost(url);System.out.println(= + result);String results = result.split();for (int i = 0; i results.length; i+) String photos = resultsi.split(,);String path = photos1;22byte data = ImageService.getImage(path);/ 獲取圖片數(shù)據(jù)(4)購物車:查看已經(jīng)選購的商品,可繼續(xù)購物,可清空購物車,也可生成訂單,如下圖 4.
39、6 所示: 圖 4.6 購物車界面主要代碼如下:if (username = null) setTitle(當(dāng)前位置-購物車); else setTitle(您好: + username + 當(dāng)前位置-購物車);setViews();23public void onItemClick(AdapterView arg0, View arg1, int arg2,long arg3) HashMap item = (HashMap) arg0.getItemAtPosition(arg2);goodsName = item.get(name)+;/goodsCount = item.get(cou
40、nt);goodsCount= Integer.parseInt(item.get(count)+);et = new EditText(GwcListActivity.this);new AlertDialog.Builder(GwcListActivity.this).setTitle(請輸入購買數(shù)量).setIcon(android.R.drawable.ic_dialog_info).setView(et).setPositiveButton(確定, myListener3).setNegativeButton(取消, null).show();(5)生成訂單:在購物車中選擇生成訂單,
41、則確認(rèn)本次購物已完成,系統(tǒng)自動將用戶添加在購物車中的商品和對應(yīng)商品的數(shù)量通知給商家,商家審核后發(fā)貨。如下圖 4.7 所示: 24 圖 4.7 生成訂單界面提交訂單的購物者信息代碼如下:PreparedStatement pstmt = conn.prepareStatement(sql); ResultSet rs = pstmt.executeQuery(); while(rs.next() int ddid2 = rs.getInt(id); /提交訂單的購物者輸入信息 String phone = rs.getString(phone); String address = rs.getS
42、tring(address); String totle = rs.getString(totle); result+=ddid2; result+=,; result+=phone; result+=,; result+=address; result+=,; result+=totle; (6)客戶端訂單查詢:用戶可以看到訂單號及下單日期,如下圖 4.8 所示: 25圖4.8客戶端訂單界面 (7)管理員管理用戶:管理員登錄后,可以對用戶進(jìn)行管理,查看用戶的注冊信息。如下圖4.9所示: 圖4.9管理員管理用戶界面刪除用戶代碼如下:String id = request.getParamete
43、r(id);String sql1 = delete from users where id=+id;DBUtil util = new DBUtil();Connection conn = util.openConnection();try Statement stmt = conn.createStatement();stmt.executeUpdate(sql1); catch (Exception e) e.printStackTrace();26(8)管理員對商品進(jìn)行管理,可以錄入商品,修改商品的信息等,如下圖 4.10所示: 圖 4.10 商品管理主要代碼如下:for (int i
44、 = 0; i goodNames.length; i+) String sql1 = select id from gwc where userid = + myid+ and goodsName = + goodNamesi + ;try PreparedStatement pstmt = conn.prepareStatement(sql1);ResultSet rs = pstmt.executeQuery();27int id = 0;while (rs.next() id = rs.getInt(id);break;if (id = 0) / 購物車沒有此商品String sql2
45、 = insert into gwc(userid,goodsName,gcount) values(+ myid + , + goodNamesi + ,0);Statement stmt = conn.createStatement();stmt.executeUpdate(sql2);result = 1; else result = 2;(9)管理員對訂單進(jìn)行管理,如果用戶已選擇生成訂單,管理員根據(jù)訂單信息處理訂單的發(fā)貨情況。如下圖 4.11 所示:圖 4.11 訂單管理28查看訂單主要代碼如下:String myid = request.getParameter(myid);Stri
46、ng sql = SELECT * from dingdan where myid=+myid;DBUtil util = new DBUtil();Connection conn = util.openConnection();String result = ;try PreparedStatement pstmt = conn.prepareStatement(sql);ResultSet rs = pstmt.executeQuery();int i = 0;while(rs.next() int ddid = rs.getInt(id);Date ddtime = rs.getDate
47、(dates);if(i!=0)result+=;result+=ddid; /訂單詳細(xì)信息 訂單號 訂單時間result+=,;result+=ddtime;i+;295 系統(tǒng)測試5.1 測試步驟(1) 首頁測試(2) 注冊,登錄測試(3) 商品錄入測試(4) 商品瀏覽測試(5) 購買,購物車測試(6) 訂單管理測試5.2 測試報告 (1)瀏覽器中輸入 http:/localhost:8080/ShopServer/admin/index.jsp 網(wǎng)址,正常顯示管理員登錄界面,首頁測試成功。(2)管理員在瀏覽器中輸入用戶名密碼登錄,登錄成功,用戶在客戶端填入注冊信息后登錄,管理員在用戶管理中
48、可查看,管理用戶信息,注冊、登錄功能測試成功,若用戶登錄未注冊的用戶名登錄則會提示登錄失敗。如下圖 5.1,5.2 所示:30圖 5.1 測試登錄界面(登錄失敗) 圖 5.2 測試登錄界面(登錄成功)(3)管理員點擊商品錄入,添加商品信息,然后提交,在點擊商品管理查看商品信息及修改,商品錄入功能測試成功。(4)用戶在客戶端界面點擊購物進(jìn)入商品信息瀏覽界面,查看商品信息,商品瀏覽功能測試成功。(5)用戶選擇要購買的商品,輸入購買數(shù)量,系統(tǒng)自動提示所需金額,用戶先將商品添加到購物車,可以繼續(xù)查看選購其他商品,也可以生成訂單。購買,購物車功能測試成功。31(6)管理員查看用戶的訂單信息,根據(jù)訂單信息
49、發(fā)貨送貨。用戶可以查看訂單以及下單日期。訂單管理功能測試成功。如下圖 5.3 所示: 圖5.3 管理員管理訂單界面(發(fā)貨操作)5.3 測試結(jié)果 測試結(jié)果:在反復(fù)檢查程序并通過相關(guān)的模塊測試,最終查出錯誤原因是因為在與服務(wù)器交互的過程中 url 的錯誤導(dǎo)致了數(shù)據(jù)的缺失,如果用瀏覽器 get 的方式去獲取,瀏覽器會出現(xiàn) 404 的錯誤異常,根據(jù) http 協(xié)議的判斷 404 問題是因為數(shù)據(jù)訪問錯誤的原因,在程序中數(shù)據(jù)訪問的方式是通過 url 的定向訪問來獲取動態(tài)數(shù)據(jù)的,通過仔細(xì)的排查將之修改成功。通過不斷的完善,以上測試用例全部通過。軟件基本達(dá)到設(shè)計要求,功能基本完整,用戶界面良好,錯誤處理正確。
50、測試總結(jié):在客戶端的開發(fā)過程中,由于經(jīng)驗的缺乏,或者一些未知的異??赡軐?dǎo)致系統(tǒng)出現(xiàn) bug,但是通過單元測試和對系統(tǒng)全面的測試,能夠有效的解決系統(tǒng)出現(xiàn)的 bug,在不斷完善之后,從而使系統(tǒng)達(dá)到預(yù)期設(shè)計的功能和效果。本系統(tǒng)基本符合了最初索要實現(xiàn)的要求,但是也存在一些需要改進(jìn)的地方,比如:在注冊相同用戶的時候,應(yīng)該先給個注冊失敗的提示,并提示失敗原因,提交系統(tǒng)的操作性。還有商品瀏覽功能,應(yīng)該設(shè)計一個可以自主搜索的功能,自己選擇所需購買的類型商品,甚至能夠做到高級查找。以后會加以改進(jìn)。326 結(jié) 論經(jīng)系統(tǒng)測試和模擬運行,系統(tǒng)較好的完成了各功能模塊的設(shè)計,實現(xiàn)了客戶端購物的大部分流程。系統(tǒng)界面美觀、功
51、能完善、操作方便、運行順暢,達(dá)到了預(yù)定設(shè)計目標(biāo)。 從技術(shù)上,客戶端編寫靈活運用了 Java 語言,服務(wù)端很好的應(yīng)了用 web 開發(fā)技術(shù)及 servlet 小程序,并充分利用各外部組件實現(xiàn)特定功能。在數(shù)據(jù)庫方面,通過編寫全局類較好的解決了代碼復(fù)用問題,提高了運行效率。在系統(tǒng)工作模式方面,運用 B/S 模式,解決了用戶界面與服務(wù)器的銜接問題。 雖然系統(tǒng)是電子商務(wù)類設(shè)計,但由于開發(fā)的條件和安全性等原因并沒有真正實現(xiàn)用戶在線支付,功能不是十分完善,另外在網(wǎng)站信息的安全性上還比較欠缺,需要進(jìn)一步加強(qiáng)。但是只有發(fā)現(xiàn)問題面對問題才有可能解決問題,會對該系統(tǒng)進(jìn)一步完善。畢業(yè)設(shè)計是我們對課上所學(xué)知識的全面運用,是應(yīng)用理論知識分析實際問題、解決實際問題能力的真實反映,也是對教師教學(xué)效果的一次全面反饋。我所做的課題是基于客戶端購物系統(tǒng),現(xiàn)在很多行業(yè)都在應(yīng)用。在丁曉光老師的指導(dǎo)下,以及與同學(xué)互相幫助下,經(jīng)過近三個月的努力和奮斗,系統(tǒng)的大部分功能已經(jīng)實現(xiàn)。其功能夠滿足用戶進(jìn)行簡單的商城購物需求。由于系統(tǒng)開發(fā)時間短,該系統(tǒng)還存在許多不足,在以后的使用中會不斷完善。33致 謝四年的讀書生活在這個季節(jié)即將劃上一個句
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 簡單明了的咨詢服務(wù)合同
- 污水泵采購招標(biāo)規(guī)定
- 中原地產(chǎn)房屋買賣合同指南
- 個人之間的借款協(xié)議文本
- 熱水器真假鑒別合同
- 定制模板采購協(xié)議
- 房屋買賣意向金合同書范本
- 數(shù)據(jù)服務(wù)費用合同
- 設(shè)備貸款合同英文翻譯
- 個性化采購合同模板樣式
- 政府的權(quán)力——依法行使
- 最新《西游記》41至60回練習(xí)題(有答案)(版權(quán)所有,侵權(quán)必究)
- 施工組織學(xué)課程設(shè)計
- EPE氣泡墊檢驗通用標(biāo)準(zhǔn)
- 數(shù)獨比賽“六宮”練習(xí)題(96道)練習(xí)
- 基于PID控制方式的10A開關(guān)電源MATLAB仿真研究
- 課程設(shè)計整體式肋梁樓蓋設(shè)計
- 機(jī)械行業(yè)特殊工種目錄
- 足球興趣小組活動記錄617
- 昆明市不動產(chǎn)登記中心最新抵押表全三套(共4頁)
- 施工組織架構(gòu)圖
評論
0/150
提交評論