遼寧石油化工大學計算機科學與技術專業(yè)本科畢業(yè)論文_第1頁
已閱讀1頁,還剩37頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p>  基于Android手機商城客戶端的開發(fā)與實現(xiàn)</p><p><b>  摘 要</b></p><p>  隨著Internet的不斷發(fā)展,網上購物人群數量的增多,網絡在人們的生活中已經占據了不可替代的地位?;谑謾C端的在線購物系統(tǒng)能使大眾隨時隨地選購自己喜歡的商品,Android 平臺以其獨有的開放性被廣泛應用于智能手機,平板電腦等領域。本

2、設計是基于Android手機商城客戶端的設計與實現(xiàn),為了能夠具備良好的可擴展性和可維護性,設計分為了客戶端和服務端兩部分,同時開發(fā)過程采用B/S結構和C/S結構相結合,使用Eclipse+ADT進行客戶端的應用程序開發(fā)實現(xiàn),基于Java語言、Android SDK和Servlet技術,Servlet加強了Web服務端的功能,利用JDBC實現(xiàn)了數據庫的連接。系統(tǒng)主要實現(xiàn)的功能包括:用戶注冊賬號及登錄,瀏覽商品,選購商品,購物車,查看訂單等

3、功能;管理員具有管理權限,包括修改、刪除用戶信息,添加、修改、刪除商品信息,訂單的處理等功能;實現(xiàn)對數據庫中的商品進行增,刪,改,查的功能。</p><p>  關鍵字:Android,B/S結構,C/S結構,Android SDK,Servlet.</p><p>  Development and Implementation of Mall Client Based on the A

4、ndroid Mobile Phone</p><p><b>  Abstract</b></p><p>  With the continuous development of the Internet, the increase in the number of online shoppers, the network in people's live

5、s has occupied an irreplaceable 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 ph

6、ones, tablet PCs and other fields. This design is the design and implementation of Android-based mobile phone shop client, in order to have good scalability</p><p>  Key words: Android, B/S mode ,C/S mode, A

7、ndroid SDK,Servlet.</p><p><b>  目錄</b></p><p><b>  1引 言1</b></p><p><b>  1.1研究背景1</b></p><p>  1.2國內外現(xiàn)狀2</p><p>  1

8、.2.1國外現(xiàn)狀2</p><p>  1.2.2國內現(xiàn)狀3</p><p>  1.3研究的目的和意義3</p><p>  1.3.1 研究的目的3</p><p>  1.3.2 研究的意義4</p><p><b>  2 需求分析5</b></p><p&

9、gt;  2.1功能需求分析5</p><p>  2.2 開發(fā)環(huán)境6</p><p>  2.3可行性研究7</p><p>  2.3.1技術可行性7</p><p>  2.3.2經濟可行性8</p><p>  2.3.3運行可行性8</p><p>  3 系統(tǒng)總體設計9

10、</p><p>  3.1總體工作流程設計9</p><p>  3.2總體功能設計10</p><p>  3.3 數據庫需求分析11</p><p>  3.4數據庫設計11</p><p>  4 詳細設計及實現(xiàn)過程16</p><p>  4.1系統(tǒng)登錄界面設計與實現(xiàn)16&

11、lt;/p><p>  4.2系統(tǒng)模塊設計17</p><p><b>  5系統(tǒng)測試28</b></p><p>  5.1 測試步驟28</p><p>  5.2測試報告28</p><p>  5.3測試結果30</p><p><b>  6結 論

12、31</b></p><p><b>  致 謝32</b></p><p><b>  參考文獻33</b></p><p>  基于Android手機商城客戶端的開發(fā)與實現(xiàn)</p><p><b>  1引 言</b></p><p&

13、gt;  隨著社會科技的進步,人類知識總量的增長不斷加快,以及市場競爭的日益激烈,人們對信息的認識產生了根本性變化?;谝苿踊ヂ?lián)網這個全新的時代背景,人們日常上網的主要通道將是手機。移動電子商務未來的發(fā)展?jié)摿κ俏〇|商城、當當網以及淘寶等電子商務企業(yè)進入這一領域的主要原因。</p><p>  隨著移動通信的發(fā)展及互聯(lián)網向移動終端的普及,網絡和用戶對移動終端的要求越來越高,移動終端不再僅是通訊網絡的終端,還將成

14、為互聯(lián)網的終端。Android是一套真正意義上的開放性的移動設備綜合平臺,Android是由 Linux+Java構成的開源軟件,允許所有廠商和個人在其基礎上進行開發(fā),因此,Android系統(tǒng)將是未來移動終端的主流,而基于Android終端的網上購物系統(tǒng)也將被廣泛使用。 </p><p><b>  1.1研究背景</b></p><p>  電子商務是指在互聯(lián)網(I

15、nternet)、企業(yè)內部網(Intranet)和增值網(VAN,Value Added Network)上以電子交易方式進行交易活動和相關服務的活動,是傳統(tǒng)商業(yè)活動各環(huán)節(jié)的電子化、網絡化。電子商務包括電子貨幣交換、供應鏈管理、電子交易市場、網絡營銷、在線事務處理、電子數據交換(EDI)、存貨管理和自動數據收集系統(tǒng)。在此過程中,利用到的信息技術包括:互聯(lián)網、外聯(lián)網、電子郵件、數據庫、電子目錄和移動電話。電子商務涵蓋了兩個方面:一是離不開

16、互聯(lián)網這個平臺,沒有了網絡,就稱不上為電子商務;二是通過互聯(lián)網完成的是一種商務活動[1]。</p><p>  手機網上購物就是電子商務的一種表現(xiàn),由于上班族很少有閑暇時間去商場購物,而且現(xiàn)代的年輕人普遍有一種“懶惰”的心理,手機網上購物系統(tǒng)很好的解決了這些問題,現(xiàn)在基于移動手機終端的購物軟件有很多[2],例如:淘寶,京東,當當網等。</p><p><b>  1.2國內外現(xiàn)狀

17、</b></p><p><b>  1.2.1國外現(xiàn)狀</b></p><p>  2013年,美國移動購物用戶滲透超六成,增長迅速,從2012年的0.9億人增加到1.2億人,共增長了10.7個百分點,未來增長相對緩慢,艾瑞咨詢認為,美國移動網購用戶數逐年增加,預計2016年在網購群體中的滲透率接近90%,說明移動網購將會在美國成為購物群體中的主流渠道之

18、一。</p><p>  去年,全球移動電商交易額接近1.5萬億美元,2017年預計達到3.2萬億美元??v觀全球移動電子商務行業(yè)的發(fā)展,艾瑞咨詢認為,目前全球移動電商快速增長的直接原因取決于智能手機的廣泛普及,以及越來越多的智能手機用戶喜愛網絡零售商提供的App或移動網頁。移動網購快速發(fā)展的原因具體來說:第一,智能手機具備輕便、不限時間地點即可運用的特性,用戶可隨時進行網上搜索或打發(fā)碎片化時間;第二,運營商推出的

19、網絡速度不斷加快,也為移動用戶享受順暢的網絡購物提供了催化條件,這些因素進一步推動了用戶對移動購物的實踐;第三,新興的App或移動站點帶來的移動購物體驗逐步受到用戶的認可,因此越來越多的傳統(tǒng)企業(yè)或電子商務企業(yè)加入移動購物商城的建設和推廣中,進一步推動了移動電商行業(yè)的發(fā)展。</p><p>  目前,90%的日本,韓國手機用戶都已經習慣在手機上消費,日本——裝有智能卡的手機在自動售貨機購物,甚至是購買大米、洗衣粉這

20、樣的日常生活用品。在最早開通3G服務的日本,移動電子商務交易額已經在電子商務總體交易額的40%左右。移動電子商務的發(fā)展,為日本眾多商業(yè)企業(yè)提供了新的銷售渠道,幾乎所有的網上經營者都同時經營自己的移動商鋪。相比傳統(tǒng)的互聯(lián)網購物,消費者用手機購物更加便捷、私密、互動,手機購物已經成為日本、韓國等國“快時尚”標志,深受城市年輕人喜愛。</p><p><b>  1.2.2國內現(xiàn)狀</b><

21、/p><p>  移動互聯(lián)網與生俱來的便利性為人們提供了一個隨時隨地進行交換信息和交流溝通的平臺,潛移默化地影響著人們的日常生活方式。隨著移動互聯(lián)網大肆興起以及智能手機、平板電腦等移動電子產品的日益普及,作為人們互聯(lián)網生活中重要一環(huán),網絡購物的形式也逐漸邁入移動平臺,衍生出的移動購物也日益流行開來。隨著人們生活節(jié)奏逐漸加快,移動購物的推廣無疑使網購變得更為輕松、自如。根據易觀智庫發(fā)布的《2012年第4季度中國手機購物

22、市場季度監(jiān)測報告》數據顯示,2011年四季度中國手機購物市場規(guī)模達196億元,2012年全年中國手機購物市場規(guī)模達600.5億元,較2011年同比增長488.7%。近五倍的同比增長值指明了電商未來的發(fā)展方向,飛速的發(fā)展表明,移動購物的黃金時代即將來臨。</p><p>  1.3研究的目的和意義</p><p>  1.3.1 研究的目的</p><p>  開發(fā)基

23、于Android手機商城客戶端的網上購物系統(tǒng),用戶可以通過Android系統(tǒng)手機注冊用戶并登錄網上商城,進行商品的查詢和購買等功能,同時在服務端以管理員權限登錄可以對客戶端發(fā)出的請求作出響應。該系統(tǒng)使得用戶不必被限制在電腦前進行購物或消費,只要用戶擁有Android手機就可以隨時隨地的購買商品。這樣方便了人們的生活,為人們節(jié)省了大量的時間,上班族們可以在路上,公交上等地購置自己所需要的商品。</p><p>  

24、在高節(jié)奏生活的現(xiàn)代社會,怎樣能節(jié)約時間,怎樣能高效率的應用時間,已經成為現(xiàn)在人們思考的首要問題?;贏ndroid平臺的網上購物商城正好符合現(xiàn)代人的需求,既節(jié)約下了購物的時間,又使得人們更好的利用一些在等待的時間,從而沒有了時間和空間的限制,購物變得更加便捷,更加人性化了。</p><p>  1.3.2 研究的意義</p><p>  隨著經濟的發(fā)展,手機網上購物系統(tǒng)逐漸大放光彩。<

25、;/p><p>  對于消費者來說,可以在任意地點逛商店,訂貨不受時間、地點的限制;獲得較大量的商品信息,可以買到當地沒有的商品;網上支付較傳統(tǒng)拿現(xiàn)金支付更加安全可避免現(xiàn)金丟失或遭到搶劫;從訂貨、買貨到貨物上門無需親臨現(xiàn)場既省時,又省力;由于網上商品省去租店面、招雇員及儲存保管等一系列費用,其價格較一般商場的同類商品更物美價廉;可以保護個人隱私,很多人喜歡在網上購買成人用品,去實體店購買顯得尷尬難堪。</p&g

26、t;<p>  對于商家來說,由于網上銷售庫存壓力較小、經營成本低、經營規(guī)模不受場地限制等。在將來會有更多的企業(yè)選擇網上銷售,通過互聯(lián)網對市場信息的及時反饋適時調整經營戰(zhàn)略,以此提高企業(yè)的經濟效益和參與國際競爭的能力。再次,對于整個市場經濟來說:這種新型的購物模式可在更大的范圍內、更廣的層面上以更高的效率實現(xiàn)資源配置。綜上可以看出,手機網上購物突破了傳統(tǒng)商務的障礙,無論對消費者、企業(yè)還是市場都有著巨大的吸引力和影響力,在新

27、經濟時期無疑是達到“多贏”效果的理想模式[3]。</p><p><b>  2 需求分析</b></p><p><b>  2.1功能需求分析</b></p><p>  系統(tǒng)主要功能分為:客戶端功能,web服務端(管理員管理)功能兩大模塊[4,5]。</p><p><b>  客戶

28、端功能:</b></p><p>  系統(tǒng)為用戶提供注冊賬號功能,用戶按要求輸入正確的信息,點擊提交,即可注冊成功。</p><p>  系統(tǒng)登陸功能,用戶輸入已有的用戶名和與之匹配的密碼,點擊登錄即可登錄客戶端。</p><p>  商品瀏覽功能,客戶端通過點擊主頁面的購物按鈕,就可以瀏覽到已錄入的各個商品的信息。</p><p&

29、gt;  購物車功能,用戶對想購買的商品,在商品后的框格內打上對號,選擇要購買的數量,點擊加入購物車,則所要購買的商品就被添加到購物車里。</p><p>  訂單功能,用戶登陸之后,點擊主頁面的訂單按鈕,可查看歷史訂單記錄。</p><p><b>  Web服務端功能:</b></p><p>  商城管理員專用管理平臺,可以提供管理員登錄

30、,修改密碼的功能,也提供查看注冊的用戶信息,刪除用戶,錄入商品信息、查看訂單信息,并給出訂單處理的功能。</p><p>  1) 管理員登錄功能,管理員通過輸入正確的賬號和密碼進行登錄。</p><p>  2) 用戶管理功能,管理員管理用戶信息,查看用戶信息,刪除用戶等操作。</p><p>  3) 商品信息管理功能,錄入商品信息,可以對商品進行添加、修改、刪

31、除等功能。</p><p>  4) 訂單信息管理功能,查看用戶訂單信息,可以對訂單進行發(fā)貨等操作。</p><p><b>  2.2 開發(fā)環(huán)境</b></p><p>  Android是基于Linux內核的軟件平臺和操作系統(tǒng),是Google 在2007 年11 月5日公布的手機系統(tǒng)平臺,早期由Google 開發(fā),后由開放手機聯(lián)盟(Open

32、 Handset Alliance)開發(fā)。它采用軟件堆層(software stack,又名以軟件疊層)的架構,主要分為3 部分。低層以Linux內核工作為基礎,只提供基本功能;其他的應用軟件則由各公司自行開發(fā),以Java 作為編寫程序的一部分[6]。</p><p>  與iPhone相似,Android采用WebKit瀏覽器引擎,具備觸摸屏、高級圖形顯示和上網功能,用戶能夠在手機上查看電子郵件、搜索網址和觀看

33、視頻節(jié)目等,比iPhone等其他手機更強調搜索功能,界面更強大,可以說是一種融入全部Web應用的單一平臺[7]。</p><p><b>  其大優(yōu)勢特色:</b></p><p>  開放性:在優(yōu)勢方面,Android平臺首先就是其開放性,開發(fā)的平臺允許任何移動終端廠商加入到Android聯(lián)盟中來。 [8,9]</p><p>  豐富的硬件

34、選擇:這一點還是與Android平臺的開放性相關,由于Android的開放性,使其硬件的支持較多,故擁有了更多的硬件選擇。</p><p>  不受任何限制的開發(fā)商:Android平臺提供較廣的平臺給第三方開發(fā)商,因此不受框架束縛。</p><p>  無縫結合的Google應用:Google公司本身擁有的應用能夠完美無縫的與Android平臺結合。 [10]</p><

35、;p><b>  軟件類需求:</b></p><p>  操作系統(tǒng):windows 7及其以上操作系統(tǒng)。</p><p>  數據庫:Mysql 5.0</p><p>  Web服務端管理:Tomcat 6.x以上</p><p>  客戶端請求服務器:Tomcat 6.x以上</p><p

36、>  后臺管理開發(fā)平臺:MyEclipse </p><p>  客戶端開發(fā)平臺:Android SDK + Java JDK1.6 + Eclipse[11] </p><p>  后臺管理開發(fā)語言包:JDK1.6。</p><p>  數據庫管理:Navicat for MySQL</p><p>  根據系統(tǒng)需要,在數據庫的選擇上

37、,選用最流行的關系型數據庫管理系統(tǒng)Mysql,將數據保存在不同的表中,而不是將所有數據放在一個大倉庫內,這樣就增加了速度并提高了靈活性,更有利于系統(tǒng)的開發(fā)。Tomcat是一個輕量級應用服務器,占用系統(tǒng)資源少,擴展性好,性能穩(wěn)定,是現(xiàn)在比較流行的Web應用服務器,MyEclipse集成了很多eclipse沒有的插件,對于Web的開發(fā)有很好的幫助。Eclipse 是開發(fā)Android系統(tǒng)的相對較好,穩(wěn)定的開發(fā)工具。此次Java開發(fā)環(huán)境沿用的

38、是一直很熟悉的JDK1.6,在Android方面用的是最先版本SDK。電腦完全可以支持本次設計的開發(fā)。</p><p><b>  2.3可行性研究</b></p><p>  2.3.1技術可行性</p><p>  Android以Java為編程語言,使接口到功能,都有層出不窮的變化,其中Activity等同于J2ME的MIDlet,一個

39、Activity 類(class)負責創(chuàng)建視窗(window),一個活動中的Activity就是在 foreground(前景)模式,背景運行的程序叫做Service。兩者之間通過由ServiceConnection和AIDL連結,達到復數程序同時運行的效果[12]。在程序設計中用到了Java核心類庫中的大量的類,該系統(tǒng)軟件方面采用了如今比較流行的開發(fā)工具MyEclipse來進行開發(fā)管理平臺的設計,采用Eclipse來進行客戶端的開發(fā)設

40、計。服務端應用Servlet技術,加強了Web服務器的功能。Android的應用程序開發(fā)還是和Java開發(fā)有一定區(qū)別,所以需要一個Google提供的Android SDK[13]。本系統(tǒng)用MySQL數據庫進行數據存儲,使用JDBC訪問數據庫。當應用程序發(fā)出一個通訊錄數據的查詢,會涉及到一個URL查詢的形式,應用程序可以很容易地添加,刪除和取代意圖而URL使其聯(lián)系在一起工作[14]。</p><p>  2.3.2

41、經濟可行性</p><p>  本設計的開發(fā)在經濟上是完全可行的,開發(fā)該系統(tǒng)的Eclipse和MySQL軟件能夠從網上直接下載應用,不需要任何經費,而且系統(tǒng)又是個人獨立完成,可以節(jié)省很多花費,同時也可提高自己的動手能力。</p><p>  2.3.3運行可行性</p><p>  本系統(tǒng)為一個簡單的手機網上購物系統(tǒng),所消耗的資源比較少,電腦配置能夠支持開發(fā)軟件的正

42、常運行,又由于開發(fā)環(huán)境的搭建成功,本系統(tǒng)運行上是可行的.</p><p><b>  3 系統(tǒng)總體設計</b></p><p>  此設計實現(xiàn)了客戶端和服務端兩部分,同時采用B/S結構和C/S結構相結合[15],使用Eclipse+ADT進行應用程序開發(fā)實現(xiàn)的客戶端,用Java語言進行編碼及使用了Android SDK開發(fā)工具包。本系統(tǒng)的實現(xiàn)需要客戶端與服務端之間大量

43、的交互,很多的業(yè)務邏輯功能實現(xiàn)都是由客戶端向服務端發(fā)送請求完成的,因此客戶端與服務端之間的通信是非常重要的環(huán)節(jié),因此Web服務端采用的是Servlet編程技術,增強服務端功能,Servlet更注重邏輯業(yè)務的實現(xiàn)[16]。使用JDBC實現(xiàn)對數據庫的連接。</p><p>  3.1總體工作流程設計</p><p>  圖3.1 系統(tǒng)工作流程圖</p><p>  工作

44、流程:已有用戶名密碼的可直接登錄,未注冊的需先注冊賬號。管理員登錄進行商品錄入功能,存儲到數據庫中,用戶登錄后可直接訪問數據庫進行商品瀏覽及選購,加入購物車結賬后,管理員會根據訂單信息選擇是否發(fā)貨。流程如上圖3.1所示。</p><p><b>  3.2總體功能設計</b></p><p>  該系統(tǒng)分為客戶端和服務端:客戶端主要是用戶的注冊、登錄、瀏覽商品,選購商

45、品,加入購物車,查看訂單;服務端主要是管理員對用戶、商品、訂單的管理,在整個系統(tǒng)中他們具有不同的功能和權限。如下圖3.2所示。</p><p><b>  `</b></p><p>  圖 3.2 總體功能圖</p><p>  3.3 數據庫需求分析</p><p>  基于功能需求中的各項功能,總結出數據庫所需要的

46、大體有4張表。分別是:管理員表,用戶表,商品表,訂單表等。用戶表需要包含用戶昵稱,密碼,電話等較為詳細的信息;商品表需要包含商品名稱,數量,價格等商品所應具備的基本信息;訂單表需要包含訂單編號,用戶昵稱,用戶地址,訂單狀態(tài)等詳細信息。</p><p><b>  3.4數據庫設計</b></p><p>  本系統(tǒng)采用的是Mysql數據庫,同時應用了Navicat f

47、or MySQL開發(fā)工具,它是一款強大的 MySQL 數據庫管理和開發(fā)工具,使用了極好的圖形用戶界面(GUI),可以用一種安全和更為容易的方式快速和容易地創(chuàng)建、組織、存取和共享信息。 用戶可完全控制 MySQL 數據庫和顯示不同的管理資料,包括一個多功能的圖形化管理用戶和訪問權限的管理工具,方便將數據從一個數據庫轉移到另一個數據庫中。</p><p>  管理員登錄表:管理員通過登錄進入服務端,管理員具有對用戶,

48、商品,訂單等進行管理的權限。如下表3.1所示</p><p>  表3.1 管理員登錄表</p><p>  用戶注冊表:沒有賬號的用戶需要先注冊一個賬號并通過賬號登錄客戶端,注冊時用戶需要填寫用戶名,密碼,電話,家庭地址。如下表3.2所示</p><p>  表3.2 用戶注冊表</p><p>  商品錄入表:管理員登錄后,可以添加商品,

49、即商品的一些信息,如商品名,商品圖片等。如下表3.3表所示。</p><p>  表3.3 商品錄入表</p><p>  購物車表:用戶選擇選購的商品,記錄商品名,購買數量。如下表3.4表所示。</p><p><b>  表3.4 購物車表</b></p><p><b>  .</b><

50、/p><p>  訂單表:記錄用戶購買商品的相關信息,以及訂單日期和是否發(fā)貨狀態(tài)。如下表3.5表所示。 </p><p><b>  表3.5 訂單表</b></p><p>  管理員管理用戶,商品,訂單,購物車四個方面。用戶主要包含了,用戶ID,密碼,電話等屬性;商品主要包含商品ID,價格等屬性;訂單主要包含訂單ID,訂單日期

51、等屬性;購物車主要包含商品名,商品數量等屬性。如下圖3.3 E-R圖所示:</p><p>  4 詳細設計及實現(xiàn)過程</p><p>  4.1系統(tǒng)登錄界面設計與實現(xiàn)</p><p>  客戶端登錄界面:客戶通過用戶名密碼登錄。如圖4.1所示</p><p>  圖4.1客戶登錄界面</p><p>  服務端登錄界

52、面:管理員登錄服務端,擁有管理權限,執(zhí)行管理任務。如圖4.2所示</p><p>  圖4.2管理員登錄界面</p><p><b>  4.2系統(tǒng)模塊設計</b></p><p> ?。?)用戶注冊:用戶輸入用戶名usename,密碼password,電話phone和地址address進行注冊,如下圖4.3所示:</p><

53、;p>  圖4.3客戶端用戶注冊界面</p><p> ?。?)購物系統(tǒng)主頁面:這個頁面有三個選擇按鈕,點擊購物可以查看商品,并可以選擇所要夠買的商品,點擊購物車可以查看用戶已選擇加入的商品,點擊訂單查看訂單信息。如下圖4.4所示:</p><p>  圖4.4購物系統(tǒng)主頁</p><p><b>  主要代碼如下: </b></p

54、><p>  super.onCreate(savedInstanceState);</p><p>  setTitle("無線購物系統(tǒng)-主頁面");</p><p>  setContentView(R.layout.main_menu);</p><p>  GridView gridview = (GridView)

55、findViewById(R.id.gridview);</p><p>  gridview.setAdapter(new ImageAdapter(this)); //把圖片按照一定的格式顯示到圖像上</p><p>  public View getView(int position, View convertView, ViewGroup parent) {</p>

56、<p><b>  // 聲明圖片視圖</b></p><p>  ImageView imageView;</p><p>  if (convertView == null) {</p><p>  // 實例化圖片視圖</p><p>  imageView = new ImageView(mContex

57、t);</p><p>  // 設置圖片視圖屬性</p><p>  imageView.setLayoutParams(new GridView.LayoutParams(85, 85));</p><p>  imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);</p><p>

58、;  imageView.setPadding(8, 8, 8, 8);</p><p><b>  } else {</b></p><p>  imageView = (ImageView) convertView;</p><p><b>  }</b></p><p>  // 設置圖片視圖

59、圖片資源</p><p>  imageView.setImageResource(mThumbIds[position]);</p><p> ?。?)購物:瀏覽商品,根據用戶自己的需要選擇要買的商品及數量,如下4.5圖所示:</p><p>  圖4.5用戶購物界面</p><p><b>  主要代碼如下:</b>

60、</p><p>  private void setViews() {</p><p>  lv = (ListView) findViewById(R.id.h_list_view);</p><p>  list = getDatas();</p><p>  adapter = new ImageSimpleAdapter(this,

61、 list, R.layout.message_list,</p><p>  new String[] { "icon", "name", "price", "count" }, new int[] {</p><p>  R.id.ml_icon, R.id.listName, R.id.listPrice

62、,</p><p>  R.id.listCount });</p><p>  lv.setAdapter(adapter);</p><p><b>  }</b></p><p>  Declare declare = (Declare) getApplicationContext();</p>&l

63、t;p>  int myid = declare.getId();</p><p>  System.out.println("myid =" + myid);</p><p>  String url = HttpUtil.BASE_URL + "GoodsListServlet";</p><p>

64、<b>  // 查詢返回結果</b></p><p>  String result = HttpUtil.queryStringForPost(url);</p><p>  System.out.println("========================= " + result);</p><p>  Str

65、ing[] results = result.split("@");</p><p>  for (int i = 0; i < results.length; i++) {</p><p>  String[] photos = results[i].split(",");</p><p>  String path

66、= photos[1];</p><p>  byte[] data = ImageService.getImage(path);// 獲取圖片數據</p><p>  (4)購物車:查看已經選購的商品,可繼續(xù)購物,可清空購物車,也可生成訂單,如下圖4.6所示: </p><p><b>  圖4.6購物車界面&l

67、t;/b></p><p><b>  主要代碼如下:</b></p><p>  if (username == null) {</p><p>  setTitle("當前位置---購物車");</p><p><b>  } else {</b></p>

68、<p>  setTitle("您好:" + username + " 當前位置---購物車");</p><p><b>  }</b></p><p>  setViews();</p><p><b>  }</b></p><p>  

69、public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,</p><p>  long arg3) {</p><p>  HashMap<String, Object> item = (HashMap<String, Object>) arg0</p><p&

70、gt;  .getItemAtPosition(arg2);</p><p>  goodsName = item.get("name")+"";</p><p>  //goodsCount = item.get("count");</p><p>  goodsCount= Integer.parseI

71、nt(item.get("count")+"");</p><p>  et = new EditText(GwcListActivity.this);</p><p>  new AlertDialog.Builder(GwcListActivity.this).setTitle("請輸入購買數量")</p>&l

72、t;p>  .setIcon(android.R.drawable.ic_dialog_info).setView(et)</p><p>  .setPositiveButton("確定", myListener3)</p><p>  .setNegativeButton("取消", null).show();</p><

73、;p><b>  }</b></p><p>  (5)生成訂單:在購物車中選擇生成訂單,則確認本次購物已完成,系統(tǒng)自動將用戶添加在購物車中的商品和對應商品的數量通知給商家,商家審核后發(fā)貨。如下圖4.7所示:</p><p>  圖4.7生成訂單界面</p><p>  提交訂單的購物者信息代碼如下:</p><p&g

74、t;  PreparedStatement pstmt = conn.prepareStatement(sql);</p><p>  ResultSet rs = pstmt.executeQuery();</p><p>  while(rs.next()) {</p><p>  int ddid2 = rs.getInt("id");

75、 //提交訂單的購物者輸入信息</p><p>  String phone = rs.getString("phone");</p><p>  String address = rs.getString("address");</p><p>  String totle = rs.getString("t

76、otle");</p><p>  result+=ddid2;</p><p>  result+=",";</p><p>  result+=phone;</p><p>  result+=",";</p><p>  result+=address;</

77、p><p>  result+=",";</p><p>  result+=totle;</p><p><b>  }</b></p><p> ?。?)客戶端訂單查詢:用戶可以看到訂單號及下單日期,如下圖4.8所示:</p><p>  圖4.8客戶端訂單界面</p&g

78、t;<p>  (7)管理員管理用戶:管理員登錄后,可以對用戶進行管理,查看用戶的注冊信息。如下圖4.9所示: </p><p>  圖4.9管理員管理用戶界面</p><p><b>  刪除用戶代碼如下:</b></p><p>  String id = request.getParameter("

79、;id");</p><p>  String sql1 = "delete from users where id="+id;</p><p>  DBUtil util = new DBUtil();</p><p>  Connection conn = util.openConnection();</p>&l

80、t;p><b>  try {</b></p><p>  Statement stmt = conn.createStatement();</p><p>  stmt.executeUpdate(sql1);</p><p>  } catch (Exception e) {</p><p>  e.print

81、StackTrace();</p><p> ?。?)管理員對商品進行管理,可以錄入商品,修改商品的信息等,如下圖4.10所示:</p><p>  圖 4.10商品管理</p><p><b>  主要代碼如下:</b></p><p>  for (int i = 0; i < goodNames.length

82、; i++) {</p><p>  String sql1 = "select id from gwc where userid =" + myid</p><p>  + " and goodsName = '" + goodNames[i] + "'";</p><p><b&g

83、t;  try {</b></p><p>  PreparedStatement pstmt = conn.prepareStatement(sql1);</p><p>  ResultSet rs = pstmt.executeQuery();</p><p>  int id = 0;</p><p>  while (r

84、s.next()) {</p><p>  id = rs.getInt("id");</p><p><b>  break;</b></p><p><b>  }</b></p><p>  if (id == 0) {// 購物車沒有此商品</p><

85、p>  String sql2 = "insert into gwc(userid,goodsName,gcount) values("</p><p>  + myid + ",'" + goodNames[i] + "',0)";</p><p>  Statement stmt = conn.crea

86、teStatement();</p><p>  stmt.executeUpdate(sql2);</p><p>  result = "1";</p><p><b>  } else {</b></p><p>  result = "2";</p><

87、p><b>  }</b></p><p>  (9)管理員對訂單進行管理,如果用戶已選擇生成訂單,管理員根據訂單信息處理訂單的發(fā)貨情況。如下圖4.11所示:</p><p>  圖4.11 訂單管理</p><p>  查看訂單主要代碼如下:</p><p>  String myid = request.get

88、Parameter("myid");</p><p>  String sql = "SELECT * from dingdan where myid="+myid;</p><p>  DBUtil util = new DBUtil();</p><p>  Connection conn = util.openConne

89、ction();</p><p>  String result = "";</p><p><b>  try {</b></p><p>  PreparedStatement pstmt = conn.prepareStatement(sql);</p><p>  ResultSet rs =

90、 pstmt.executeQuery();</p><p>  int i = 0;</p><p>  while(rs.next()) {</p><p>  int ddid = rs.getInt("id");</p><p>  Date ddtime = rs.getDate("dates"

91、;);</p><p><b>  if(i!=0){</b></p><p>  result+="@";</p><p><b>  }</b></p><p>  result+=ddid; //訂單詳細信息 訂單號 訂單時間</p>

92、<p>  result+=",";</p><p>  result+=ddtime;</p><p><b>  i++;</b></p><p><b>  }</b></p><p><b>  }</b></p><

93、p><b>  5系統(tǒng)測試</b></p><p><b>  5.1 測試步驟</b></p><p><b>  (1) 首頁測試</b></p><p>  (2) 注冊,登錄測試</p><p>  (3) 商品錄入測試</p><p> 

94、 (4) 商品瀏覽測試</p><p>  (5) 購買,購物車測試</p><p>  (6) 訂單管理測試</p><p><b>  5.2測試報告</b></p><p>  (1)瀏覽器中輸入http://localhost:8080/ShopServer/admin/index.jsp網址,正常顯示管理員登錄

95、界面,首頁測試成功。</p><p>  (2)管理員在瀏覽器中輸入用戶名密碼登錄,登錄成功,用戶在客戶端填入注冊信息后登錄,管理員在用戶管理中可查看,管理用戶信息,注冊、登錄功能測試成功,若用戶登錄未注冊的用戶名登錄則會提示登錄失敗。如下圖5.1,5.2所示:</p><p>  圖5.1測試登錄界面(登錄失?。?lt;/p><p>  圖5.2測試登錄界面(登錄成功

96、)</p><p>  (3)管理員點擊商品錄入,添加商品信息,然后提交,在點擊商品管理查看商品信息及修改,商品錄入功能測試成功。</p><p>  (4)用戶在客戶端界面點擊購物進入商品信息瀏覽界面,查看商品信息,商品瀏覽功能測試成功。</p><p>  (5)用戶選擇要購買的商品,輸入購買數量,系統(tǒng)自動提示所需金額,用戶先將商品添加到購物車,可以繼續(xù)查看選購

97、其他商品,也可以生成訂單。購買,購物車功能測試成功。</p><p>  (6)管理員查看用戶的訂單信息,根據訂單信息發(fā)貨送貨。用戶可以查看訂單以及下單日期。訂單管理功能測試成功。如下圖5.3所示:</p><p>  圖5.3管理員管理訂單界面(發(fā)貨操作)</p><p><b>  5.3測試結果</b></p><p&

98、gt;  測試結果:在反復檢查程序并通過相關的模塊測試,最終查出錯誤原因是因為在與服務器交互的過程中url的錯誤導致了數據的缺失,如果用瀏覽器get的方式去獲取,瀏覽器會出現(xiàn)404的錯誤異常,根據http協(xié)議的判斷404問題是因為數據訪問錯誤的原因,在程序中數據訪問的方式是通過url的定向訪問來獲取動態(tài)數據的,通過仔細的排查將之修改成功。通過不斷的完善,以上測試用例全部通過。軟件基本達到設計要求,功能基本完整,用戶界面良好,錯誤處理正確

99、。</p><p>  測試總結:在客戶端的開發(fā)過程中,由于經驗的缺乏,或者一些未知的異常可能導致系統(tǒng)出現(xiàn)bug,但是通過單元測試和對系統(tǒng)全面的測試,能夠有效的解決系統(tǒng)出現(xiàn)的bug,在不斷完善之后,從而使系統(tǒng)達到預期設計的功能和效果。本系統(tǒng)基本符合了最初索要實現(xiàn)的要求,但是也存在一些需要改進的地方,比如:在注冊相同用戶的時候,應該先給個注冊失敗的提示,并提示失敗原因,提交系統(tǒng)的操作性。還有商品瀏覽功能,應該設計一

100、個可以自主搜索的功能,自己選擇所需購買的類型商品,甚至能夠做到高級查找。以后會加以改進。</p><p><b>  6結 論</b></p><p>  經系統(tǒng)測試和模擬運行,系統(tǒng)較好的完成了各功能模塊的設計,實現(xiàn)了客戶端購物的大部分流程。系統(tǒng)界面美觀、功能完善、操作方便、運行順暢,達到了預定設計目標。 </p><p>  從技術

101、上,客戶端編寫靈活運用了Java語言,服務端很好的應了用web開發(fā)技術及servlet小程序,并充分利用各外部組件實現(xiàn)特定功能。在數據庫方面,通過編寫全局類較好的解決了代碼復用問題,提高了運行效率。在系統(tǒng)工作模式方面,運用B/S模式,解決了用戶界面與服務器的銜接問題。 </p><p>  雖然系統(tǒng)是電子商務類設計,但由于開發(fā)的條件和安全性等原因并沒有真正實現(xiàn)用戶在線支付,功能不是十分完善,另外在網站信

102、息的安全性上還比較欠缺,需要進一步加強。但是只有發(fā)現(xiàn)問題面對問題才有可能解決問題,會對該系統(tǒng)進一步完善。</p><p>  畢業(yè)設計是我們對課上所學知識的全面運用,是應用理論知識分析實際問題、解決實際問題能力的真實反映,也是對教師教學效果的一次全面反饋。我所做的課題是基于客戶端購物系統(tǒng),現(xiàn)在很多行業(yè)都在應用。在 老師的指導下,以及與同學互相幫助下,經過近三個月的努力和奮斗,系統(tǒng)的大部分功能已經實現(xiàn)。其

103、功能夠滿足用戶進行簡單的商城購物需求。</p><p>  由于系統(tǒng)開發(fā)時間短,該系統(tǒng)還存在許多不足,在以后的使用中會不斷完善。</p><p><b>  致 謝</b></p><p>  四年的讀書生活在這個季節(jié)即將劃上一個句號,對于我的人生卻只是一個逗號,我將面對又一次征程的開始。四年的求學生涯在師長、親友及同學的大力支持下,走得辛苦卻

104、也收獲滿囊,在論文即將付梓之際,思緒萬千,心情久久不能平靜。偉人、名人為我所崇拜,可是我更急切地要把我的敬意和贊美獻給一位平凡的人,我的導師。</p><p>  歷時將近三個月的時間終于將畢業(yè)設計和這篇論文寫完,在論文的寫作過程中遇到了無數的困難和障礙,都在同學和老師的幫助下度過了。尤其要強烈感謝我的論文指導老師— 老師,他對我進行了無私的指導和幫助,不厭其煩的幫助進行論文的修改和改進。在此向幫助和指

105、導過我的各位老師表示最衷心的感謝!</p><p>  畢業(yè)設計和論文都是在 老師的細心指導下完成的,在此過程中得到了 老師的大力支持,在他的耐心指導下,使我更加積極的完成畢業(yè)設計,并在最后完成了我的論文。通過這次完整的項目,我也學到了很多課堂上學不到的東西,我的動手能力也相應的得到了很大的提高,同時也積累了很多的技術經驗,真正想實現(xiàn)一個軟件是一件很不容易的事。在這里再次對 老師對我

106、的關心和和悉心的指導致以誠摯的謝意。</p><p>  最后,對母校四年來對我的培養(yǎng)和教育,院領導的關心和幫助還有所有教過我的老師送上我最崇高的敬意和由衷的感謝。</p><p><b>  參考文獻</b></p><p>  [1] 公磊,周聰.基于Android的移動終端應用程序開發(fā)與研究[J].計算機與現(xiàn)代化,2008(8):85-8

107、9.</p><p>  [2] 高煥堂.Android應用框架原理與程式設計36技[M/OL]. Google公司,2008:132-150.</p><p>  [3] 馬越.Android的架構與應用[D].北京:中國地質大學(北京)碩士學位論文,2008:9-20.</p><p>  [4] 開放手機聯(lián)盟.Android[DB/OL].2008-07-30

108、.</p><p>  [5] 李剛.Struts2權威指南——基于WebWork核心的MVC開發(fā)[M].北京:電子工業(yè)出版社,2007.</p><p>  [6]Raghu Ramakrishnan.Johannes Gehrke.Database Management System.McGraw-Hill Professional. 2007:180-213</p>&

109、lt;p>  [7] 李寧. Android/OPhone開發(fā)完全講義[M]. 中國水利水電出版社. 2010. </p><p>  [8] Ed Burnett, Hello, Android: Introducing Google’s Mobile Development&

110、#160;Platform[J]. </p><p>  PRAGMATIC BOOKSHELF,2010.7:10-11. </p><p>  [9] Rick Rogers, John Lombardo.Android Application Development[M].O’Reilly

111、60;</p><p>  Media,Inc.2009. </p><p>  [10] 胡偉.Android 系統(tǒng)架構及其驅動研究[J].廣州廣播電視大學學報. 2010,10(4). </p><p>  [11] Steve Guo.Binder[OL].http://iremnant&#

112、160;tistory.com/entry/Android-JAVA-Binder-IPC-System,</p><p>  2010/03/18. </p><p>  [12] 郭志宏. Android應用開發(fā)詳解[M].電子工業(yè)出版社. 2010. [2] 楊豐盛.Android應用開發(fā)揭秘[M]. 機械工業(yè)出版

113、社. 2010. </p><p>  [13] Frank Ableson.Introduction to Android development[J].developerWorks,2009,10(7). [4] 余志龍,陳昱勛,鄭名杰,陳小鳳,郭秩均. Google Android SDK

114、開發(fā)范例大全[M].人</p><p>  民郵電出版社. 2009. </p><p>  [14] 靳巖,姚尚朗. Google Android開發(fā)入門與實踐[M].人民郵電出版社. 2009. [11] 陳建偉. 基于Android的三維物體的觸摸控制[J].硅谷,2009,(23):76.&#

115、160;[12] E2ECloud工作室. 深入淺出Google Android[M].人民郵電出版社. 2009.</p><p>  [15] 陳建偉. 基于Android的三維物體的觸摸控制[J].硅谷,2009,(23):76. [12] E2ECloud工作室. 深入淺出Google Android[M]

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論