基于安卓Android平臺的移動手機商城設(shè)計與實現(xiàn)畢業(yè)論文_第1頁
基于安卓Android平臺的移動手機商城設(shè)計與實現(xiàn)畢業(yè)論文_第2頁
基于安卓Android平臺的移動手機商城設(shè)計與實現(xiàn)畢業(yè)論文_第3頁
基于安卓Android平臺的移動手機商城設(shè)計與實現(xiàn)畢業(yè)論文_第4頁
基于安卓Android平臺的移動手機商城設(shè)計與實現(xiàn)畢業(yè)論文_第5頁
已閱讀5頁,還剩126頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

畢業(yè)設(shè)計題目:基于Android平臺的移動商城設(shè)計與實現(xiàn)姓名:張三學號:000000000000學院:XXXXXXXX專業(yè):XXXXXXXX同組人:指導教師:XXX2000年X月X日摘要Android是基于Linux內(nèi)核的軟件平臺和操作系統(tǒng),以其特有的開放性在智能、平板電腦等領(lǐng)域廣泛應(yīng)用。近幾年電子商務(wù)得到了迅速的開展,通過Internet進行交易己成為一種潮流。兩者的結(jié)合,便產(chǎn)生了具有巨大開展?jié)摿Φ囊苿与娮由虅?wù)。本系統(tǒng)主要是探索Android與電子商務(wù)的結(jié)合,利用SSH框架設(shè)計后臺管理,AndroidSDK設(shè)計客戶端。以商城為例,實現(xiàn)用戶瀏覽,搜索,購置商品等功能。由于選擇Mysql作為數(shù)據(jù)庫,故部署了效勞器作為客戶端與數(shù)據(jù)庫通信的橋梁。后臺管理系統(tǒng)采用SSH框架技術(shù)控制邏輯及數(shù)據(jù)庫操作,并且將CSS應(yīng)用在JSP頁面實現(xiàn)頁面美化。實現(xiàn)對數(shù)據(jù)庫中商品進行增,刪,改,查的功能,并對客戶訂單進行管理。該系統(tǒng)較平常購物系統(tǒng)有更好的移動性與跨平臺性。通過測試,已能夠在Android上運行使用其各項購物流程。在本文的最后闡述了將來進一步可以完善的一些相關(guān)工作。關(guān)鍵詞:網(wǎng)絡(luò)JAVAAndroid;SSH;網(wǎng)上購物AbstractAndroid

operatingsystem

originallydevelopedby

founder

AndyRubin.Anditonlysupportedphonesatfirst.Itwasacquired

ofinjectionbyGooglein2005.AndGoogledrawin

anumberof

manufacturers

formed

theOpenHandsetAlliance

(OpenHandsetAlliance)

todevelopandimprovethesystemandextendto

the

tabletPC

andother

areasgradually.Attheendof2021,thedatashowedthatAndroidhadbecamethemostpopularsmartphone

platformbeyondtheNokia

Symbian

system.ThissystemmainlyexploresthecombinationofAndroidande-commerce.UsingtheSSHFrame,themanagementsystemisdesigned.TheclientisdesignedwithAndroidSDK.Usingthephoneasanexample,achievetheuserstobrowsesearchbuygoodsandotherfunctions.BecauseoftheselectionofMysql,wedeployaserverasthebridgebetweenthedatabaseandtheclient.ThemanagementsystemcontrolsthelogicandtheoperationonthedatabasebytheSSHFrame.CSSisappliedtotheJSPtomaketheinterfacemorefriendly.Therealizationofadatabaseofgoodstoincrease,delete,change,searchfunction,andcustomerordermanagement.Thesystemis

better

thanthe

usual

shoppingsystem

onmobilityand

cross-platform.Bythetest,itcanruneveryfunctionofshoppingontheAndroid-mobilephone.Keywords:Android;SSH;E-commerce;OnlineShopping目錄摘要 IAbstract II目錄 III引言 11.課題研究背景 21.1Android平臺 21.23G時代購物與網(wǎng)絡(luò)購物的比擬分析 31.3集成開發(fā)環(huán)境Eclipse 51.4Android模擬器61.4.1模擬器概述61.4.2模擬器和真機的區(qū)別71.5研究的目的和主要內(nèi)容 71.5.1研究的目的 71.5.2研究的主要內(nèi)容 81.6論文組織結(jié)構(gòu)82.基于Android平臺的移動商城開發(fā)環(huán)境和相關(guān)技術(shù)82.1開發(fā)環(huán)境及硬件需求 92.2Java語言特點 92.3關(guān)于ECLIPSE132.4數(shù)據(jù)庫需求分析132.5本章小結(jié)133.系統(tǒng)總體設(shè)計 143.1總體功能 143.2E-R圖153.3初步設(shè)計方案163.3.1客戶端的登錄和注冊163.3.2客戶端的瀏覽功能173.3.3購物車功能173.3.4訂單功能183.3.5效勞器管理功能193.4系統(tǒng)流程概述 193.5系統(tǒng)框架圖203.6數(shù)據(jù)庫設(shè)計213.7本章小結(jié) 234.系統(tǒng)詳細設(shè)計244.1總體流程概要設(shè)計 244.2Android系統(tǒng)客戶端邏輯結(jié)構(gòu)設(shè)計及其內(nèi)容編碼254.2.1客戶端登陸功能內(nèi)容254.2.2客戶端注冊功能內(nèi)容26客戶端商品和搜索功能內(nèi)容284.2.4客戶端購物車功能內(nèi)容394.2.5客戶端訂單功能內(nèi)容494.2.6客戶端client534.3系統(tǒng)后臺邏輯結(jié)構(gòu)設(shè)計及其程序開發(fā)554.3.1系統(tǒng)后臺管理員和用戶登錄程序內(nèi)容564.3.2系統(tǒng)后臺商品管理程序內(nèi)容594.3.3系統(tǒng)后臺訂單管理程序內(nèi)容624.4本章小結(jié)655.系統(tǒng)的具體實現(xiàn)665.1前臺android客戶端主要功能的實現(xiàn)675.1.1登入界面675.1.2注冊界面685.1.3商品主界面685.1.4商品服裝的詳細頁面705.1.5htc商品的詳細界面和將想要購置的參加購物車界面715.1.6購物車界面725.1.7訂單結(jié)算界面735.2后臺web端主要功能的實現(xiàn)745.2.1后臺登入界面745.2.2后臺主界面755.2.3商品列表界面765.2.4后臺添加商品界面775.2.5后臺編輯商品界面785.2.6后臺訂單管理界面805.3本章小結(jié)806.總結(jié)和展望816.1基于Android平臺的移動商城的設(shè)計回憶816.2Android平臺的移動商城的設(shè)計經(jīng)驗總結(jié)816.3本章小結(jié) 82結(jié)論 83致謝 84參考文獻 86引言Java語言是由美國SunMicrosystem的詹姆斯·高斯林、PratrickNaughton及MikeSheridan等人在1991年精心設(shè)計出來的計算機編程語言,它的設(shè)想在于實現(xiàn)可以在不同的平臺上運作使用同一種編程語言所編寫出來的程序。這種架構(gòu)是具有革命性的對于消費性電子產(chǎn)品而言,因為在消費性電子產(chǎn)品中的操作系統(tǒng)及處理器各不相同,如果要在不同的平臺上開發(fā)程序就必須要了解和熟悉各個平臺的特性,以及其供給的API使用方式,必須分別開發(fā)不同的版本才可以執(zhí)行,這就影響了應(yīng)用程序的普便性。近幾年,由于移動互聯(lián)網(wǎng)作為全新的時代背景,甚至有業(yè)內(nèi)人士大膽預測隨著無線互聯(lián)不斷蠶食著有線互聯(lián)市場,未來可能接近7成都將是無線互聯(lián)的市場,人們?nèi)粘I暇W(wǎng)的主要的產(chǎn)品將是。正是預見到用戶的無線市場有著巨大的開展?jié)摿Γ餍懈鳂I(yè)都不斷加速搶占無線互聯(lián)的市場。移動電子商務(wù)在未來的巨大開展?jié)摿κ俏〇|、當當、卓越以及淘寶等各大電子商務(wù)企業(yè)進入這一領(lǐng)域的主要原因。程善寶指出,淘寶、京東等傳統(tǒng)電子商務(wù)企業(yè)進入移動電子商務(wù),根據(jù)商品渠道、運營經(jīng)驗等方面的經(jīng)驗的優(yōu)勢,在移動電子商務(wù)領(lǐng)域?qū)入娦胚\營商、software提供商和新興的移動電子商務(wù)企業(yè)具有著更好的遠景。由于移動通信的不斷開展和互聯(lián)網(wǎng)轉(zhuǎn)向移動終端的推廣,用戶和網(wǎng)絡(luò)對移動終端的要求與日俱增,因為WindowsMobile,Symbian,PalmOS等平臺過于陳舊與封閉,不能很好的滿足用戶的需要和要求,所以市場急迫需要著開放性很強的一個平臺。隨著多年的開展,第三代數(shù)字通信(3G)技術(shù)獲取了市場廣泛的關(guān)注和接受,它為移動終端用戶提供了更快捷的數(shù)據(jù)傳輸速率。隨著3G網(wǎng)絡(luò)的使用,移動終端不再只是通訊網(wǎng)絡(luò)的終端,還將成為互聯(lián)網(wǎng)的終端。所以,移動終端的應(yīng)用軟件以及需要的效勞將會有著很大開展的空間。Google就為此在2007年的11月推出了一個專門為了移動設(shè)備設(shè)計的一個軟件平臺——Android。Android是一套真正意義上的具有開放性的移動設(shè)備的綜合平臺,它包括操作系統(tǒng)、中間件和一些關(guān)鍵的平臺應(yīng)用。Android是由Linux+Java構(gòu)成的開源軟件,允許所有廠商和個人在其根底上進行設(shè)計開發(fā)。Android平臺具有的開放性等特點既能促進移動通信技術(shù)的不斷創(chuàng)新,也將有助于對開發(fā)本錢的降低,還可以使得運營商非常方便的制定出具有自己特色的產(chǎn)品。因此,它是具備很大的市場開展?jié)摿Α?.課題研究背景1.1Android平臺1.Android平臺:Android是Google基于Linux平臺研發(fā)出來的操作系統(tǒng)。是google公布的應(yīng)用平臺。它包括用戶界面,操作系統(tǒng)和移動工作所需要的全部軟件。它使用軟件堆層的構(gòu)架主要有3局部,最底層是以Linux內(nèi)核工作為根底的。谷歌通過與運營商,設(shè)備制造商,開發(fā)商和其他相關(guān)方面的深厚的合作伙伴關(guān)系,希望能夠通過創(chuàng)立一個標準的,開放的軟件平臺,在移動通信行業(yè)形成一個開放的生態(tài)系統(tǒng)。2.Android系統(tǒng)的優(yōu)勢以及特點:開放性。Google與開放聯(lián)盟合作開發(fā)了Android,谷歌通過與運營商,設(shè)備制造商,開發(fā)商和其他相關(guān)方面的深厚的合作伙伴關(guān)系,希望能夠通過創(chuàng)立一個標準的,開放的軟件平臺,在移動通信行業(yè)形成一個開放的生態(tài)系統(tǒng)。應(yīng)用無國限。在Android設(shè)備上的應(yīng)用程序可以通過標準API訪問核心移動。通過互聯(lián)網(wǎng),應(yīng)用程序的功能可以宣布它們提供給其他應(yīng)用程序。在平等根底上創(chuàng)立應(yīng)用程序。在移動設(shè)備上的應(yīng)用程序可以被替換或擴展,即便是撥號程序,或在主屏幕上的核心部件也可以。應(yīng)用程序可以很容易地嵌入到網(wǎng)絡(luò)。應(yīng)用程序可以很容易地嵌入在HTML、JavaScript和樣式表,并且也可以通過WebView將網(wǎng)絡(luò)內(nèi)容顯示。在應(yīng)用程序中可以實現(xiàn)并行運行。在Android這種完整的多任務(wù)環(huán)境中,應(yīng)用程序可以在實現(xiàn)并行運行。并且后臺運行的時候,應(yīng)用程序能產(chǎn)生通知以引起注意。3.Android的應(yīng)用開展現(xiàn)狀因為現(xiàn)如今有很多的廠商看到了Android的美好開展前景,所以從外國到內(nèi)陸很多廠商都已經(jīng)利用Android來生產(chǎn)和平板電腦等的電子產(chǎn)品。像戴爾這樣有實力的廠商也是如此,例如戴爾推出的平板電腦streak就是使用的Android系統(tǒng),與蘋果ipad的功能相比幾乎不相上下,甚至用戶在使用感受上和通用性能上會比ipad更加優(yōu)秀。在國內(nèi),許多廠商在全力追求具有高清播放能力的電子產(chǎn)品的情況下也都同時使用了Android作為他們自己產(chǎn)品的使用的系統(tǒng)。甚至還有很多的山寨產(chǎn)品也全是使用的Android的操作系統(tǒng)來生產(chǎn)他們的產(chǎn)品,雖然還是和模仿的產(chǎn)品有多少的差距,但是從外觀和價格的角度上來講山寨的產(chǎn)品還是有它的市場。這些都證實了當今Android的應(yīng)用現(xiàn)狀是非常受認可的。4.開發(fā)基于Android平臺的應(yīng)用在Android平臺上,可以開發(fā)出各式各樣的應(yīng)用。Android的應(yīng)用程序是用Java語言開發(fā)的,也就是說,只要會Java語言就可以比擬容易地開發(fā)出Android的應(yīng)用。如果不了解Java也沒有關(guān)系,通過一段時間對Java語言的學習,也可以很快進入Android開發(fā)領(lǐng)域。加上Android平臺提供了2D、3D的圖形支持、數(shù)據(jù)庫支持〔SQLite〕,并且集成了瀏覽器?;贏ndroid的平臺,我們可以開發(fā)出豐富多彩的應(yīng)用,這些應(yīng)用可以涉及工具、管理、互聯(lián)網(wǎng)、游戲等,在此開放的平臺上,這一切都取決于程序員的自由發(fā)揮和創(chuàng)意。1.23G時代購物與網(wǎng)絡(luò)購物的比擬分析1.購物的概念購物指的是使用上網(wǎng)從而實現(xiàn)在網(wǎng)絡(luò)上購物的過程,屬于移動電子商務(wù)。其購物的原理與在使用電腦網(wǎng)購一樣,僅僅是載體從電腦變成了網(wǎng)絡(luò)。國內(nèi)的3G業(yè)務(wù)將有可能與網(wǎng)絡(luò)購物和網(wǎng)絡(luò)支付等平臺聯(lián)手,通過網(wǎng)速的超高速率來實現(xiàn)“購物〞。在不久的將來中國的購物將會迎來一個高速的增長期,用戶只要開通的上網(wǎng)效勞,就可以通過查詢商品信息,并且可以在線支付購置產(chǎn)品。不用去實體店鋪,也不用坐在電腦前“淘貨〞,一部就可以完成挑選、選購和支付的全過程。據(jù)了解,目前運營商和網(wǎng)購平臺以及網(wǎng)付平臺三方已有意向進行合作,一旦“購物〞的鐵三角形成,用戶不僅購物將會更加的便捷,運營商和網(wǎng)購平臺以及網(wǎng)付平臺三方也將從中獲益匪淺。實際上,此前國內(nèi)的局部網(wǎng)購商曾經(jīng)推出過“購物〞業(yè)務(wù),但是由于2G的網(wǎng)速較慢,用戶瀏覽網(wǎng)店以及網(wǎng)上支付的效果并不是很好。2.外國的購物開展如今將近九成的日本以及韓國的用戶都已經(jīng)習慣了購物,即便是購置食品、洗浴用品這樣的在日常生活中不可缺少的用品。在最早開通3G效勞的日本,網(wǎng)絡(luò)購物的交易額已經(jīng)占電子商務(wù)總體交易額的四成左右。由于移動電子商務(wù)的高速開展,為日本的眾多商業(yè)企業(yè)提供了更多的銷售渠道,將近全部的網(wǎng)絡(luò)經(jīng)營者都同時經(jīng)營著自己的移動商鋪。與傳統(tǒng)的互聯(lián)網(wǎng)購物相比,用戶消費者用購物更加的方便、保密、共享。購物已經(jīng)成為日本、韓國等國“快時尚〞標志,在城市德年輕人當中深受喜愛。3.當今購物在中國的開展與問題在當今大城市的地鐵中出現(xiàn)了這樣的奇特情景:在行人匆匆走過的地鐵通道中,出現(xiàn)了超市中才能見到的商品貨架,琳瑯滿目的商品,就像是在大型超市一樣,但走進才發(fā)現(xiàn)“貨架〞竟然是“貼在〞墻上的,可樂、奶粉、甚至還有尿不濕,每一種產(chǎn)品下方都有相應(yīng)價格和唯一的二維碼。這究竟是何物呢?來這個“墻壁超市〞是電商企業(yè)1號店進一步開拓潛在市場所推出的一種全新嘗試,屬于國內(nèi)首創(chuàng)的虛實結(jié)合移動電子商務(wù)應(yīng)用,12年7月25日早在今年年初,中國主力電子商務(wù)軍真正向無線應(yīng)用發(fā)起進軍,不再是前兩年的“雷聲大、雨點小〞。移動互聯(lián)網(wǎng)儼然成為電子商務(wù)爭搶的香餑餑,電子商務(wù)網(wǎng)站紛紛啟動了移動互聯(lián)網(wǎng)戰(zhàn)略。目前,電子商務(wù)企業(yè)推出、PC客戶端早已不是新鮮事,淘寶網(wǎng)、樂淘網(wǎng)、麥考林、凡客誠品、當當網(wǎng)、卓越網(wǎng)等均相繼推出各種類型操作系統(tǒng)的客戶端產(chǎn)品。而今年第一季度中國移動互聯(lián)網(wǎng)用戶規(guī)模到達了約3.5億人,同比增速高達66.5%,其中移動購物第一季度收入突破15億,占移動互聯(lián)網(wǎng)總收入的14.20%。無論是網(wǎng)絡(luò)的便捷性、物流的暢達性、產(chǎn)品的多樣性、經(jīng)營方式上的靈活性,抑或是對于消費者生活方式的改變,各種優(yōu)勢都在進一步擠壓傳統(tǒng)零售商的生存空間。同時也觸動了他們對市場的敏感,面對此龐大的市場蛋糕開始蠢蠢欲動。以目前國內(nèi)產(chǎn)業(yè)的開展趨勢來看,數(shù)量巨大的移動互聯(lián)網(wǎng)用戶,為移動電子商務(wù)的開展提供了潛在的用戶根底,巨大的利益也引來了眾多企業(yè)紛紛參加。不過,移動電子商務(wù)還不能到達爐火純青的地步,比方上網(wǎng)不夠快、資費仍然偏貴、移動終端的平安性、支付的平安性等制約著移動電子商務(wù)的開展。在市場化的過程中顯露出的一系列問題,終將由市場來解決,移動電子商務(wù)也必將有廣闊的市場前景。4.與傳統(tǒng)網(wǎng)絡(luò)購物相比,購物具有的優(yōu)勢分析購物具有很好的便捷性購物用戶群體數(shù)量多3G技術(shù)的支持購物具有"隨時隨地"等特點購物有較好的身份認證的根底與傳統(tǒng)網(wǎng)絡(luò)購物相比,購物存在的問題購物形式單一(2)支付體系的建立和完善尚需時間(3)相比網(wǎng)絡(luò)購物具有更大的不平安因素1.3集成開發(fā)環(huán)境EclipseEclipse是一個開放源代碼的、與NetBeans、SunONEStudio和BorlandJbuilder類似的一種基于Java的整合型可擴展開發(fā)平臺,也是目前最著名的開源工程之一。其本身而言,它只是一個框架和一組效勞,用于通過插件組件構(gòu)建開發(fā)環(huán)境。幸運的是,Eclipse附帶了一個標準的插件集,包括Java開發(fā)工具〔JavaDevelopmentTools,JDT〕。其未來的目標不僅僅是成為專門開發(fā)Java程序的IDE環(huán)境,根據(jù)Eclipse的體系結(jié)構(gòu),通過開發(fā)插件,它能擴展到任何語言的開發(fā),甚至能成為圖片繪制的工具。同時可以通過開發(fā)新的插件擴展現(xiàn)有插件的功能,比方本文為了進行即時網(wǎng)絡(luò)游戲的開發(fā),就是通過J2ME插件的擴展來加以實現(xiàn)的。Eclipse的跨平臺性很強,可以通過無限擴展各廠商的專有SDK,來實現(xiàn)應(yīng)用程序在各種型號不同的上的應(yīng)用,而且它本身有著統(tǒng)一的外觀,操作和系統(tǒng)資源管理,這正是Eclipse的潛力所在[4]。相比其他的專用開發(fā)工具,Eclipse有如下幾個優(yōu)點:①、豐富的觀察窗口。視圖是Eclipse的最靈活的局部,可以自定義每個視圖中包含的觀察窗口種類,也可以自定義一個新視圖。當然,每個視圖的觀察窗口都是可配置的,多樣化的視圖不但可以幫助程序員以不同角度觀察代碼,也可以滿足不同的編程習慣。②、強大的調(diào)試功能。Eclipse有多種跟蹤方式,斷點設(shè)置,變量值觀察窗口等,而且根據(jù)所安裝插件的不同,Eclipse存在多種運行/調(diào)試程序的方式。這樣可以使程序員能更快的發(fā)現(xiàn)問題和解決問題,提高開發(fā)的效率。③、強大的插件加載功能。這正是Eclipse實現(xiàn)跨平臺特性的真正魅力所在,也是提高游戲移植效率的有效方法。④、快捷的代碼顯示切換功能。Eclipse提供了只顯示所選單元的代碼顯示切換功能,這在編輯Java程序的時候可以以方法為單位進行編輯,不僅代碼的顯示更加簡捷,而且還有助于編寫封裝性更好的類。正是由于Eclipse的種種優(yōu)秀特性,使得Eclipse在眾多整合型開發(fā)平臺中脫穎而出,成為不少從事軟件開發(fā)的程序員的首選開發(fā)工具,這也是本文中的即時網(wǎng)絡(luò)游戲選用Eclipse進行開發(fā)的真正原因。1.4Android模擬器模擬器概述Android模擬器的主界面,如圖1-1所示圖1-1安卓模擬器的主界面如1-1圖所示的是模擬器的主界面全景圖,從圖中我們可以看出模擬器主要是由兩個局部組成的,上圖左邊的局部模擬的是的顯示界面,主要分布有按鈕,主菜單按鈕和上網(wǎng)按鈕,右面的局部模擬的是的鍵盤輸入。在模擬的局部內(nèi)置了一些Google公司自帶的程序,如打,發(fā)短信以及其他程序。Android模擬器中AndroidSDK自帶一個移動模擬器。它是一個可以運行在你電腦上的虛擬設(shè)備。Android模擬器可以讓你無需使用物理設(shè)備便可預覽、開發(fā)和測試設(shè)計的Android應(yīng)用程序。Android模擬器能夠模擬除了接聽和撥打外的所有移動設(shè)備上的典型功能和行為。Android模擬器提供了大量的導航和控制鍵,你可以通過鼠標或鍵盤點擊這些按鍵來為你的應(yīng)用程序產(chǎn)生事件。同時它還有一個屏幕用于顯示Android自帶應(yīng)用程序和你自己的應(yīng)用程序。為了便于模擬和測試應(yīng)用程序,Android模擬器允許你的應(yīng)用程序通過Android平臺效勞調(diào)用其他程序、訪問網(wǎng)絡(luò)、播放音頻和視頻、保存和傳輸數(shù)據(jù)、通知用戶、渲染圖像過渡和場景。Android模擬器同樣具有強大的調(diào)試能力,例如能夠記錄內(nèi)核輸出的控制臺、模擬程序中斷(比方接受短信或打入)、模擬數(shù)據(jù)通道中的延時效果和遺失。下面的章節(jié)將提供關(guān)于模擬器的詳細信息,以及如何在開發(fā)應(yīng)用程序中使用模擬器。模擬器和真機的區(qū)別Android的模擬器功能很強,但是模擬器仍然只能盡量去模擬,有些的功能還是模擬不了,下面做一個簡單的說明。模擬器不支持呼叫來電和接聽實際來電,但可以通過控制臺模擬呼叫。模擬器不支持USB連接。模擬器不支持相機/視頻捕捉。模擬器不支持音頻輸入,但支持輸出。模擬器不支持拓展耳機。模擬器不支持藍牙。模擬器不能確定連接狀態(tài)。模擬器不能確定電池電量水平和充電狀態(tài)。(9)模擬器不能確定SD卡的插入和彈出。1.5研究的目的和主要內(nèi)容研究的目的題目要求研究并完成一個基于Andriod平臺的網(wǎng)上購物商城,在此設(shè)計使用商城,用戶可以通過Android系統(tǒng)登錄該商城,而且可以進行查詢和購置商品等功能,就如京東,當當?shù)染W(wǎng)站一樣,提供用戶對商品的一些簡單的操作.此購物系統(tǒng)使得用戶使用的時候自由度較高,并非非要通過電腦來進行購置商品,只需要有個Android系統(tǒng)的就可以無時無刻的進行購物了.不但解放了時間和空間的限制,也增加了購物的效率,和購物的樂趣.研究的主要內(nèi)容(1)用戶可以進行注冊并成為會員(2)用戶可以通過用戶名登錄(3)用戶可以對自己想要瀏覽的商品進行查詢和搜索(4)用戶可以對商品進行瀏覽(5)用戶可以添加想要購置的商品進入購物車(6)用戶也可以將已經(jīng)添加到購物車的商品刪除或修改(7)登錄的用戶可以對訂單進行查詢(8)管理員管理商品的根本信息(9)管理員可以對該網(wǎng)站的商品進行添加或刪除(10)管理員管理訂單的根本信息1.6論文組織結(jié)構(gòu)本論文的引言局部和第一章中闡述了基于Android平臺的移動商城的當今概況,并介紹了網(wǎng)絡(luò)購物在當前社會的開展?jié)摿Γ约俺绦蛟O(shè)計的一些研究背景。并且對基于Android平臺的移動商城研究的目的和主要內(nèi)容進行了說明。本文其余局部的內(nèi)容如下:第二章介紹了Java語言的特點、本程序的開發(fā)環(huán)境及其相關(guān)工具的原理和使用。第三章中介紹了網(wǎng)絡(luò)商城程序的根本流程和框架。對商城根本框架等做了詳細表達。第四章主要介紹了網(wǎng)絡(luò)商城設(shè)計的詳細過程,還對其重要局部的編程和代碼進行了分析和講解。第五章中在Eclipse開發(fā)平臺下,使用Andriod模擬器對該購物商城系統(tǒng)進行測試實現(xiàn)。第六章中回憶了基于Android平臺的移動商城設(shè)計過程中的遇到的難題,總結(jié)了設(shè)計過程中得到的經(jīng)驗與啟示。2.基于Android平臺的移動商城開發(fā)環(huán)境和相關(guān)技術(shù)介紹2.1開發(fā)環(huán)境及硬件需求Windowsxp較好的兼容性,內(nèi)存資源占用少的特點是我選擇作為本次開發(fā)的主系統(tǒng)的重要依據(jù)。考慮到機器的性能方面,在數(shù)據(jù)庫的選擇上,選用相對小型的Mysql5.0,更有利于系統(tǒng)的開發(fā)。Tomcat是一個輕量級應(yīng)用效勞器,占用系統(tǒng)資源少,擴展性好,性能穩(wěn)定,是現(xiàn)在比擬流行的Web應(yīng)用效勞器MyEclipseforSpring8.6集成了很多eclipse沒有的插件,對于Web的開發(fā)有很好的幫助。EclipseIndigo是開發(fā)Android系統(tǒng)的相對較好,穩(wěn)定的開發(fā)工具。此次java開發(fā)環(huán)境沿用的是一直很熟悉的JDK1.6,在android方面用的是最先版本SDK。自身電腦完全可以支持本次系統(tǒng)的開發(fā),硬件支持較好。2.2Java語言特點Java與C++語言相比,去掉了C++語言的復雜性和二義性的成分,增加了平安性和可移植性的成分。Java語言具有如下特點:簡單性、面向?qū)ο?、平臺無關(guān)性、可移植性、解釋性、髙性能、動態(tài)性、可靠性和平安性、多線程、分布式處理等。下面將介紹Java語言的主要特點2.3關(guān)于ECLIPSEEclipse是一個開放源代碼的、基于Java的可擴展開發(fā)平臺。就其本身而言,它只是一個框架和一組效勞,用于通過插件組件構(gòu)建開發(fā)環(huán)境。幸運的是,Eclipse附帶了一個標準的插件集,包括Java開發(fā)工具〔JavaDevelopmentTools,JDT〕。雖然大多數(shù)用戶很樂于將Eclipse當作JavaIDE來使用,但Eclipse的目標不僅限于此。Eclipse還包括插件開發(fā)環(huán)境〔Plug-inDevelopmentEnvironment,PDE〕,這個組件主要針對希望擴展Eclipse的軟件開發(fā)人員,因為它允許他們構(gòu)建與Eclipse環(huán)境無縫集成的工具。2.4數(shù)據(jù)庫需求分析基于功能需求中的各項功能,總結(jié)出數(shù)據(jù)庫需要的主要有四張表。分別是:用戶表,商品表,訂單表。用戶表需要包含用戶昵稱,密碼,性別等較為詳細的信息;商品表那么需要包含商品名稱,數(shù)量,價格等商品所應(yīng)具備的根本信息;訂單表需要包含訂單編號,用戶昵稱,用戶地址,訂單狀態(tài)等詳細信息。2.5本章小結(jié)第二章介紹了Java語言的特點、本程序的開發(fā)環(huán)境及其相關(guān)工具的使用原理和使用方法。3.系統(tǒng)概要設(shè)計3.1總體功能該系統(tǒng)分為前端的客戶端和后端的管理端,前端也就是客戶端主要包括用戶的瀏覽商品,注冊,登錄,商品搜索以及購物,添加到購物車,訂單等重要功能.后端主要是管理員和用戶的登陸與管理員對商品的訂單信息和商品信息的管理,在整個系統(tǒng)中各自有不同的功能和權(quán)限.系統(tǒng)實現(xiàn)的大致過程是客戶端連接效勞器,效勞器鏈接數(shù)據(jù)庫;客戶端連接數(shù)據(jù)庫是網(wǎng)絡(luò)連接,基于TCP/IP連接。效勞器是通過jdbc接口與數(shù)據(jù)庫連接的客戶端的主要使用對象是普通的注冊后的會員用戶,后端管理模塊的使用對象是管理人員和用戶系統(tǒng)的概要設(shè)計流程如圖3-1所示用戶注冊用戶注冊登錄登錄客戶端商品搜索客戶端商品搜索購物系統(tǒng)數(shù)據(jù)庫瀏覽購物系統(tǒng)數(shù)據(jù)庫瀏覽后臺管理購物車后臺管理購物車訂單查詢訂單查詢管理員管理員登錄管理員管理員登錄商品信息管理商品信息管理訂單信息管理訂單信息管理圖3-1系統(tǒng)的概要設(shè)計流程圖3.2E-R圖1.系統(tǒng)管理員主要管理用戶,商品的添加和刪除,訂單,商品類型四個方面。2.用戶主要包含了,ID,昵稱,密碼等屬性。3.商品主要包含ID,名稱,價格等屬性。4.訂單主要包含ID,訂單狀態(tài)等屬性。5.商品類型主要包含ID,類型名稱等屬性。如以下圖3-2所示:用戶昵稱用戶昵稱用戶ID管理員用戶時間商品訂單管理管理管理密碼等級號碼性別余額商品ID規(guī)格價格圖片數(shù)量描述商品名稱用戶姓名訂單ID用戶總價訂單日期收貨地址訂單狀態(tài)管理商品類型類型ID類型名mmm1111m圖3-2E-R圖3.3初步設(shè)計方案客戶端的登錄和注冊客戶端的登錄和注冊是指一個用戶如果要進行購置等商品時必須要有會員號,這是就需要注冊商城是自己成為商城的會員,必須要填寫用戶自己想要在網(wǎng)站上使用的用戶名還有密碼,并且還要再次輸入密碼使得密碼是確定唯一的。還要寫入自己的號以便將來忘記密碼時可以及時地找回并且還要填入性別。以上信息填寫好后就可以生成一個屬于用戶個人的該網(wǎng)站的會員號。記住會員號和其對應(yīng)的密碼通過用戶名和密碼的填寫可以進行登陸,假設(shè)密碼或用戶名中出現(xiàn)與注冊時不相同的信息那么不能夠登陸成功,將提示從新登陸。假設(shè)用戶名和密碼填寫正確后的用戶可以登陸成功。通過挑選商品添加到購物車,方便下訂單和之后的操作??蛻舳说顷懽粤鞒倘鐖D3-3所示:手機主界面手機主界面登陸/注冊登陸/注冊注冊界面登陸界面Noyes注冊界面登陸界面No驗證驗證驗證驗證yes注冊用戶的主界面注冊用戶的主界面圖3-3客戶端的登陸與注冊流程圖客戶端的瀏覽功能瀏覽功能是當一個用戶進行注冊和登陸成功后可以看到商城的主界面,主界面中具有五大類商品的按鈕,其中有服裝/服飾,電視機/顯示器,/數(shù)碼,皮包/包包,還有運動鞋等商品。點擊5個圖片按鈕的操作程序按鈕,點擊后即可以顯示該類商品的具體有哪些商品的信息。使得用戶進行瀏覽和選購??蛻舳说臑g覽功能圖如3-4所示主界面主界面電腦照相機其他電腦照相機其他圖3-4瀏覽功能的流程圖購物車功能購物車功能是對注冊完成的商城的會員可以進行登陸,登陸成功之后的用戶可以對自己中意的商品添加到購物車中,假設(shè)用戶還需要繼續(xù)購物那么可以回到商品區(qū)繼續(xù)進行購物從而再把自己喜歡的商品添加到購物車,假設(shè)購物完成后那么可以在購物車中進行管理,可以對自己選入購物車的商品進行篩選,最終將所選擇的商品進行購置或者將購置的商品下訂單等.客戶端購物車功能如圖3-5所示客戶端本地請求,讀取本地文件,造型為對象點擊購物車Tab客戶端本地請求,讀取本地文件,造型為對象點擊購物車Tab將列表中元素在客戶端顯示將列表中元素在客戶端顯示點擊結(jié)算,將數(shù)據(jù)寫成字節(jié)流,發(fā)送至效勞器點擊結(jié)算,將數(shù)據(jù)寫成字節(jié)流,發(fā)送至效勞器效勞器讀取數(shù)據(jù),寫入數(shù)據(jù)庫效勞器讀取數(shù)據(jù),寫入數(shù)據(jù)庫圖3-5客戶端購物車功能圖訂單功能訂單功能是對注冊完成后的商城的會員可以進行對所選擇的商品從購物車中下訂單進行購置。訂單界面中顯示用戶自己的賬戶余額,還有用戶所要下訂單的商品的價格,假設(shè)要下訂單必須要正確地填寫用戶的家庭住址以及聯(lián)系,以便送貨人員可以快速而又準確的配送;并且還要輸入注冊時填寫的密碼,假設(shè)填寫正確那么下訂單成功,假設(shè)填寫不正確那么要繼續(xù)填寫正確前方可完成購置。訂單系統(tǒng)的流程圖如圖3-6所示主界面主界面商品瀏覽商品瀏覽no訂單訂單用戶登錄狀態(tài)用戶登錄狀態(tài)yes接受訂單接受訂單圖3-6訂單功能的流程圖效勞器管理功能效勞器管理功能是指商城的網(wǎng)站管理員通過用戶名以及密碼的正確填寫后登錄到后臺主頁面,在商品管理的商品列表中通過數(shù)據(jù)庫可以對產(chǎn)品的具體信息進行查詢,修改,添加以及刪除。管理員通過對商品信息的編輯可以添加商品。例如管理員要對打折期間的促銷商品進行修改價格等操作或新上架的商品進行編輯從而使得普通用戶可以在客戶端瀏覽其信息。管理員在訂單管理中可以看到用戶下的訂單,并且對客戶的訂單進行完成。效勞器后臺的大致流程如3-7所示管理員登錄管理員登錄數(shù)據(jù)庫管理數(shù)據(jù)庫管理刪除增加修改查詢刪除增加修改查詢數(shù)據(jù)庫數(shù)據(jù)庫圖3-7效勞管理流程圖3.4系統(tǒng)流程概述(1)用戶如果要瀏覽網(wǎng)站得時后首先應(yīng)該看到的就是網(wǎng)站首頁,在首頁用戶可以瀏覽近期發(fā)布或更新的最新商品,還有網(wǎng)站的熱門產(chǎn)品和該網(wǎng)站推薦的產(chǎn)品,而且還可以對的商品的信息進行搜索。(2)如果用戶想要購置某些商品的時候用戶需要注冊成為該網(wǎng)站的會員。(3)如果用戶瀏覽完商品的具體信息后,還可以把自己想買的商品放入購物車,也可以隨時增加和刪除或修改購物車里已添加的商品。(4)如果購物車里的商品用戶已經(jīng)滿意就可以去下單。(5)相關(guān)的程序模塊會將用戶所填寫的所有信息內(nèi)容都記錄在數(shù)據(jù)庫內(nèi),使網(wǎng)上商城的管理人員可以準確和快速的核對信息內(nèi)容,以便發(fā)送貨物(6)假設(shè)用戶已經(jīng)確認收到了購置的產(chǎn)品后整個購置的過程就結(jié)束了。(7)管理員在電子商城的后臺管理方面還需要添加,修改,刪除商品,同時要對商品進行分類和訂單處理都是需要后臺的管理人員來操作的。3.5系統(tǒng)框架圖后臺管理框圖如圖3-8所示后臺管理訂單管理會員管理商品管理訂單管理會員管理商品管理刪除添加查找刪除添加刪除添加查找刪除添加圖3-8后臺管理流程〔2〕用戶端框圖如圖3-9所示用戶訂購商品查找商品瀏覽商品注冊登訂購商品查找商品瀏覽商品注冊登錄圖3-9用戶端框圖3.6數(shù)據(jù)庫設(shè)計本系統(tǒng)采用的是Mysql數(shù)據(jù)庫,為了將在系統(tǒng)頁面中顯示的動態(tài)數(shù)據(jù)存放在后臺數(shù)據(jù)庫中,便于修改、更新和信息隱藏,因此,將E-R圖轉(zhuǎn)換成關(guān)系模型,即在數(shù)據(jù)庫中建立實體關(guān)系表。用戶表用戶表具有用戶昵稱、密碼、、等根本信息。設(shè)置uid為主鍵,主鍵的生成策略采用自動生成方式。用戶的屬性圖如圖3-10所示:用戶用戶用戶ID密碼用戶昵稱等級性別余額號碼圖3-10用戶屬性圖根據(jù)圖3-10可定義出用戶的數(shù)據(jù)表user,用戶表用來保存所有用戶的信息。結(jié)構(gòu)如表3-11:表3-11用戶表列名數(shù)據(jù)類型說明useridIntprimarykeyauto_increment用戶IDusernamevarchar用戶昵稱pwdvarchar密碼phonevarchar用戶號碼Power1varchar等級sexvarchar性別Yu_eInt余額商品表商品表具有商品名稱、數(shù)量、價格、圖片等根本信息。設(shè)置pid為主鍵,主鍵的生成策略采用自動生成方式。商品的屬性圖如圖3-12所示:商品商品商品ID數(shù)量商品名稱規(guī)格價格描述圖片圖3-12商品屬性圖根據(jù)圖3-12可定義出商品的數(shù)據(jù)表product,商品表用來保存所有商品的信息。結(jié)構(gòu)如表3-13:表3-13商品表列名數(shù)據(jù)類型說明idIntprimarykeyauto_increment商品IDNamevarchar名稱fujiavarchar規(guī)格jiaqianInt價格shuliangvarchar數(shù)量tupianvarchar圖片miaoshuvarchar描述訂單表訂單表具有用戶昵稱、用戶姓名、商品名稱、、地址、訂單日期、訂單處理狀態(tài)等根本信息。設(shè)置sid為主鍵,主鍵的生成策略采用自動生成方式。訂單的屬性圖如圖3-14所示:用戶用戶訂單ID用戶姓名時間總價收獲地址訂單明細訂單處理狀態(tài)圖3-14訂單屬性圖根據(jù)圖3-14可定義出訂單的數(shù)據(jù)表salesorder,訂單表用來保存所有訂單的信息。結(jié)構(gòu)如表3-15:表3-15訂單表列名數(shù)據(jù)類型說明IdIntprimarykeyauto_increment訂單IDshijianvarchar訂單時間kewuvarchar客戶shouhuodizhivarchar收獲地址Jin_eint總價mingxivarchar訂單明細zhuangtaivarchar狀態(tài)phonevarchar3.7本章小結(jié)第三章中介紹了程序的根本流程和框架。對商城根本框架等做了詳細表達。具體算法的代碼實現(xiàn)和詳細流程將在下章介紹。課題詳細設(shè)計4.1總體流程概要設(shè)計用戶通過登錄進入系統(tǒng),可以進行修改自己的信息,瀏覽、訂購商品,查看、取消訂單等操作。通過管理員的權(quán)限可以進入后臺管理系統(tǒng)分別對商品信息管理、訂單信息管理、進行添加、刪除、修改和查看等操作。系統(tǒng)工作流程圖如圖4-1所示。管理員用戶管理員用戶登入后臺登入客戶端登入后臺登入客戶端訂單管理商品管理注冊、登錄瀏覽商品訂單管理商品管理注冊、登錄瀏覽商品數(shù)據(jù)數(shù)據(jù)庫購物車購物車圖4-1系統(tǒng)工作流程圖4.2Android系統(tǒng)客戶端邏輯結(jié)構(gòu)設(shè)計及其內(nèi)容編碼客戶端登陸功能內(nèi)容調(diào)用Client這個類,實現(xiàn)與后臺數(shù)據(jù)庫的連接。運用sql語句查詢數(shù)據(jù)庫中用戶的信息,與登入界面中輸入的信息相匹配,如果匹配錯誤,那么提示錯誤,如匹配正確,便可實例化一個Intent對象,并調(diào)用其方法,實現(xiàn)登錄界面的成功跳轉(zhuǎn)。如圖4-2所示:客戶端將輸入內(nèi)容以字節(jié)流發(fā)送至客戶端效勞器輸入用戶名,密碼 客戶端將輸入內(nèi)容以字節(jié)流發(fā)送至客戶端效勞器輸入用戶名,密碼用戶名,密碼判斷用戶名,密碼判斷 True False客戶端接收數(shù)據(jù),做相應(yīng)跳轉(zhuǎn) 客戶端接收數(shù)據(jù),做相應(yīng)跳轉(zhuǎn)圖4-2客戶端登陸流程圖登陸功能內(nèi)容編碼的翻譯解釋packagecom.shopping;--這個類放在了com.shopping這個文件夾下面importandroid.app.Activity;--引入Activity這個類,因為之后會用到這個類中的一些方法importandroid.content.Intent;--Android系統(tǒng)起步開機importandroid.content.SharedPreferences;--SharedPreferences是Android平臺上一個輕量級的存儲類,主要是保存一些常用的配置比方窗口狀態(tài)es.Editor;--設(shè)置Android信息的保存和讀取importandroid.os.Bundle;--引入Bundle這個類,Android使用Bundle進行數(shù)據(jù)傳遞分析importandroid.os.StrictMode;--規(guī)定android的模式importandroid.preference.PreferenceManager;--引入PreferenceManager類,用來保存簡單的數(shù)據(jù)類型importandroid.view.View;Android.view.view--應(yīng)該是android的封裝類,引入后就可以用view中的方法了importandroid.view.View.OnClickListener;--引入onClickListener類,是一種處理的是點擊事件的接口。importandroid.widget.Button;--引入widget.Button這個類,就可以使用該類中按鈕的一些使用方法importandroid.widget.EditText;--引入widget.EditText這個類,即可以在下面程序中使用編輯文本框中的方法了importandroid.widget.Toast;--引入widget.Toast這個類,作用是實現(xiàn)在界面上彈出一個懸浮提示框importcom..client;--引入Client這個類,Client是ApacheJakartaCommon下的子工程,可以用來提供高效的、最新的、功能豐富的支持協(xié)議的客戶端編程工具包,Java應(yīng)用程序需要直接通過協(xié)議來訪問網(wǎng)絡(luò)資源。publicclassloginextendsActivity{privateButtonb1;--定義按鈕b1privateButtonb2;--定義按鈕b2privateEditTexte1;--定義一個編輯文本框e1privateEditTexte2;--定義一個編輯文本框e2SharedPreferencessh;--工程中需要對用戶輸入的信息進行存儲,然后在后續(xù)程序中讀取使用,利用到了SharedPreferences類。Editore;--編輯器@OverridepublicvoidonCreate(BundlesavedInstanceState)--這是Activity建立的時候一定會調(diào)用的onCreate()方法{super.onCreate(savedInstanceState);--繼承onCreate()方法setContentView(R.layout.login);--載入登錄頁面這個視圖internet();sh=PreferenceManager.getDefaultSharedPreferences(this);--拿到控件在SharedPreferences中存儲的數(shù)值e=sh.edit();b1=(Button)findViewById(R.id.login_button1);--從R文件下調(diào)出登錄頁面的button1的按鈕符b2=(Button)findViewById(R.id.login_button2);--從R文件下調(diào)出登錄頁面的button2的按鈕符e1=(EditText)findViewById(R.id.login_editText1);--從R文件下調(diào)出登錄頁面editText1編輯文本框e2=(EditText)findViewById(R.id.login_editText2);--從R文件下調(diào)出登錄頁面editText2編輯文本框這段代碼為用戶“登錄〞操作代碼會出現(xiàn)4種結(jié)果:1、顯示“用戶名不存在〞2、登錄成功并顯示用戶信息;包括1、用戶名;2、余額3、顯示“密碼錯誤〞4、如果沒填寫用戶名或密碼那么顯示“您是不是有東西沒填啊〞b1.setOnClickListener(newOnClickListener(){--設(shè)置一個登錄按鈕publicvoidonClick(Viewv){--點擊這個“登錄〞按鈕并執(zhí)行該按鈕下的操作if(!e1.getText().toString().equals("")||!e2.getText().toString().equals("")){clienthc=newclient("l=1&sql=select@*@from@user1@where@username='"+e1.getText().toString()+"';");//"+e1.getText().toString()+"--訪問網(wǎng)絡(luò)資源,用戶通過填寫用戶名,以及登錄密碼進行登錄操作,后臺將該用戶的用戶名及密碼進行驗證操作Stringstr=hc.getshuju();--得到數(shù)據(jù)信息//Log.d("Jersey",str);--輸出數(shù)據(jù)str,且數(shù)據(jù)顏色為藍色if(str.equals("")){Toast.makeText(login.this,"用戶名不存在!",Toast.LENGTH_LONG).show();--如果str為空集,彈出一個文本框顯示信息“用戶名不存在〞return;--返回結(jié)果}else{String[]str1=str.split(",");--將得到的信息以,分隔開if(e2.getText().toString().equals(str1[2])){e.putString("id",str1[0]);e.putString("name",str1[1]);e.putString("yu_e",str1[6]);emit();--當str不為空集,可能出現(xiàn)的情況1:那么顯示用戶的id號碼,名字,余額信息,并將信息以“,〞分隔開Inteni=newIntent(login.this,ShoppingActivity.class);--切換到新的界面startActivity(i);--執(zhí)行跳轉(zhuǎn)到新界面的操作login.this.finish();--登錄操作完成}else{Toast.makeText(login.this,"密碼錯誤!",Toast.LENGTH_LONG).show();--當str不為空集,可能出現(xiàn)的情況2:彈出一個文本框,顯示“密碼錯誤〞}}}else{Toast.makeText(login.this,"您是不是有點東西沒填??!",Toast.LENGTH_LONG).show();--當str不為空集時,可能出現(xiàn)的情況3:彈出一個文本框顯示“您是不是有點東西沒填啊〞即可能是用戶名沒填,或者登錄密碼沒有填寫}}});如果未注冊那么點擊注冊按鈕先進行注冊b2.setOnClickListener(newOnClickListener(){--設(shè)立一個注冊按鈕publicvoidonClick(Viewv){--點擊“注冊〞按鈕,并執(zhí)行該按鈕下的操作Intenti=newIntent(login.this,zhuce.class);--切換到注冊界面startActivity(i);--執(zhí)行跳轉(zhuǎn)新界面的操作login.this.finish();--完成操作}});}這段程序是用來實現(xiàn)連接網(wǎng)絡(luò)的功能;android系統(tǒng)固定模塊程序privatevoidinternet(){StrictMode.setThreadPolicy(newStrictMode.ThreadPolicy.Builder().detectDiskReads().detectDiskWrites().detectNetwork().penaltyLog().build());StrictMode.setVmPolicy(newStrictMode.VmPolicy.Builder().detectLeakedSqlLiteObjects().detectLeakedSqlLiteObjects().penaltyLog().penaltyDeath().build());}}客戶端注冊功能內(nèi)容同樣是調(diào)用Client這個類,連接到數(shù)據(jù)庫,將輸入的信息插入到后臺數(shù)據(jù)庫中,兩次密碼輸入一致便可實現(xiàn)注冊,如不一樣,需重新輸入。信息輸入正確后實例化Intent對象,調(diào)用其方法,并跳轉(zhuǎn)到登入界面。如圖4-3所示:密碼判斷客戶端將輸入內(nèi)容以字節(jié)流發(fā)送至客戶端效勞器輸入注冊信息密碼判斷客戶端將輸入內(nèi)容以字節(jié)流發(fā)送至客戶端效勞器輸入注冊信息 true false客戶端接收數(shù)據(jù),做相應(yīng)的跳轉(zhuǎn)客戶端接收數(shù)據(jù),做相應(yīng)的跳轉(zhuǎn)圖4-3客戶端注冊流程圖注冊功能內(nèi)容編碼和局部解釋packagecom.shopping;--這個類放在了com.shopping這個文件夾下面importandroid.app.Activity;--引入Activity這個類,因為之后會用到這個類中的一些方法importandroid.content.Intent;--引入Intent類,用于Android系統(tǒng)起步開機操作importandroid.os.Bundle;--引入Bundle這個類,Android使用Bundle進行數(shù)據(jù)傳遞分析importandroid.os.StrictMode;--規(guī)定android的模式importandroid.view.View;--android.view.view應(yīng)該是android的封裝類,引入后就可以用view中的方法了nClickListener;--引入onClickListener類,是一種處理的是點擊事件的接口。importandroid.widget.Button;--引入widget.Button這個類,就可以使用該類中按鈕的一些使用方法importandroid.widget.EditText;--引入widget.EditText這個類,即可以在下面程序中使用編輯文本框中的方法了importandroid.widget.RadioGroup;--調(diào)用可以給用戶提供多項選擇一機制的實現(xiàn)方法importandroid.widget.Toast;--引入widget.Toast這個類,作用是實現(xiàn)在界面上彈出一個懸浮提示框importcom..client;--引入Client這個類,Client是ApacheJakartaCommon下的子工程,可以用來提供高效的、最新的、功能豐富的支持協(xié)議的客戶端編程工具包,Java應(yīng)用程序需要直接通過協(xié)議來訪問網(wǎng)絡(luò)資源。publicclasszhuceextendsActivity{privateButtonb1;--定義按鈕b1privateEditTexte1;--定義一個編輯文本框e1privateEditTexte2;--定義一個編輯文本框e2privateEditTexte3;--定義一個編輯文本框e3privateEditTexte4;--定義一個編輯文本框e4privateRadioGroupr1;--定義一個多項選擇一機制菜單r1privateStringsex;--定義性別參量@OverridepublicvoidonCreate(BundlesavedInstanceState){--這是Activity建立的時候一定會調(diào)用的onCreate()方法super.onCreate(savedInstanceState);--繼承這個方法setContentView(R.layout.zhuce);--載入zhuce〔注冊頁面〕這個視圖internet();--連接網(wǎng)絡(luò)b1=(Button)findViewById(R.id.zhuce_button1);--從R文件下調(diào)出注冊頁面的button1按鈕ce_editText1);--從R文件調(diào)出注冊頁面的editText1編輯文本框1e2=(EditText)findViewById(R.id.zhuce_editText2);--從R文件調(diào)出注冊頁面的editText1編輯文本框1e3=(EditText)findViewById(R.id.zhuce_editText3);--從R文件調(diào)出注冊頁面的editText1編輯文本框1e4=(EditText)findViewById(R.id.zhuce_editText4);--從R文件調(diào)出注冊頁面的editText1編輯文本框1r1=(RadioGroup)findViewById(R.id.radioGroup1);--從R文件調(diào)出注冊頁面的radioGroup1多項選擇一機制菜單r1設(shè)立一個注冊按鈕,點擊該頁面上的注冊按鈕后可進入頁面填寫注冊信息可能的結(jié)果:1、注冊成功;2、注冊失敗原因:兩次密碼輸入不一致;3、注冊失敗原因:您是不是有東西沒填啊b1.setOnClickListener(newOnClickListener(){--設(shè)立一個可點擊的注冊按鈕publicvoidonClick(Viewv){--點擊這個“注冊〞按鈕,并執(zhí)行該按鈕下的操作if(!e1.getText().toString().equals("")&&!e2.getText().toString().equals("")&&!e3.getText().toString().equals("")&&!e4.getText().toString().equals("")){f(e2.getText().toString().equals(e3.getText().toString())){--點擊注冊按鈕后,進入注冊頁面,填寫該頁面上需要填寫的信息內(nèi)容if(r1.getCheckedRadioButtonId()==R.id.radio0)sex="男";elsesex="女";--該頁中有二選一按鈕,性別可以選擇“男〞或者“女〞其中一個選項clienthc=newclient("l=2&sql=insert@into@user1(username,pwd,phone,power1,sex)@values('"+e1.getText().toString()+"','"+e2.getText().toString()+"','"+e4.getText().toString()+"',2,'"+sex+"');"--訪問網(wǎng)絡(luò)資源,將注冊用戶的名字,,性別等信息參加到數(shù)據(jù)庫中 Stringstr=hc.getshuju();--得到到數(shù)據(jù)并放到str中if(str.equals("1")){--如果str=1 Toast.makeText(zhuce.this,"注冊成功!",Toast.LENGTH_LONG).show();--注冊操作成功并彈出文本框顯示提示信息為“注冊成功〞 Intenti=newIntent(zhuce.this,login.class);--切換到新的界面startActivity(i);--執(zhí)行跳轉(zhuǎn)新界面的操作zhuce.this.finish();--完成注冊操作 }}else{當str不等于1時會出現(xiàn)下面兩種情況Toast.makeText(zhuce.this,"兩次密碼沒填對!",Toast.LENGTH_LONG).show();--情況1:注冊時需要填寫兩次密碼,兩次密碼填寫必須一致,如果不一致那么彈出文本框顯示提示信息為“兩次密碼沒填對〞 } }else{Toast.makeText(zhuce.this,"您是不是有點東西沒填?。?,Toast.LENGTH_LONG).show();--情況2:當注冊信息有的工程沒有填寫時,那么彈出文本框顯示提示信息為“您是不是有點東西沒填啊!〞 } } });}這段程序是用來實現(xiàn)連接網(wǎng)絡(luò)的〔android固定模塊程序〕privatevoidinternet(){ StrictMode.setThreadPolicy(newStrictMode.ThreadPolicy.Builder().detectDiskReads().detectDiskWrites().detectNetwork().penaltyLog().build());StrictMode.setVmPolicy(newStrictMode.VmPolicy.Builder().detectLeakedSqlLiteObjects().detectLeakedSqlLiteObjects().penaltyLog().penaltyDeath().build()); }}客戶端商品和搜索功能內(nèi)容會員用戶在客戶端選擇具體商品在客戶端選擇具體商品顯示商品詳細信息顯示商品詳細信息選擇數(shù)量,參加購物車,并購置選擇數(shù)量,參加購物車,并購置圖4-4客戶端商品搜索流程圖商品搜索的sql語句在ListInfo類中,調(diào)用這個類的方法,實例一個List<HashMao<String,Object>>集合,將搜索出來的商品保存在這個集合中,實例SimpleAdapter對象,List集合中的商品,以列表的形式顯示在頁面中。1.商品搜索功能內(nèi)容編碼和局部解釋packagecom.shopping;--這個類放在了com.shopping這個文件夾下面importjava.util.HashMap;--引入util.HashMap這個類,可以調(diào)用HashMap中的“鏈接〞方法importjava.util.List;--引入util.List這個類,可以使用list進行批量數(shù)據(jù)序列操作istActivity;--引入ListActivity這個類,該類是綁定到一個數(shù)據(jù)源,用來顯示這一串數(shù)據(jù)的importandroid.content.Intent;--引入Inrent類,用來實現(xiàn)Android系統(tǒng)起步開機操作importandroid.os.Bundle;--引入Bundle這個類,Android使用Bundle進行數(shù)據(jù)傳遞分析importandroid.view.View;--android.view.view應(yīng)該是android的封裝類,引入后就可以用view中的方法了importandroid.view.View.OnClickListener;--引入onClickListener類,是一種處理的是點擊事件的接口。importandroid.widget.ArrayAdapter;--引入widget.ArrayAdapter,可以使用將數(shù)據(jù)放到一個數(shù)據(jù)以便使用的方法importandroid.widget.Button;--引入widget.Button這個類,就可以使用該類中按鈕的一些使用方法importandroid.widget.EditText;--引入widget.EditText這個類,即可以在下面程序中使用編輯文本框中的方法了importandroid.widget.ListView;--引入widget.ListView這個類,該類的作用是可以實現(xiàn)以列表的形式展示具體內(nèi)容,并且能夠根據(jù)數(shù)據(jù)的長度自適應(yīng)顯示importandroid.widget.SimpleAdapter;--引入Simple.Adapter這個類,可以將靜態(tài)數(shù)據(jù)映射到XML文件中定義好的視圖importandroid.widget.Spinner;--引入Spinner類,用來實現(xiàn)Spinner就是下拉菜單的操作importandroid.widget.TextView;--引入TextView類,該類具有用來顯文本框的作用importandroid.widget.Toast;--引入widget.Toast這個類,作用是實現(xiàn)在界面上彈出一個懸浮提示框importcom.adapter.ImageSimpleAdapter;--引入ImageSimpleAdapter類,可以實現(xiàn)將靜態(tài)圖片數(shù)據(jù)映射到XML文件中定義好的視圖importcom.list.listinfo;--引入listinfo類,之后會用到該類中的一些方法publicclasssousuoextendsListActivity{privatestaticfinalString[]m={"服裝","包包","電視","運動鞋",""};--定義5個字符串分別是:“服裝〞、“包包〞、“電視〞、“運動鞋〞、“〞privateEditTexte1;--定義一個編輯文本框e1privateButtonb1;--定義一個按鈕b1privateSpinnerspinner;--定義一個下拉菜單privateArrayAdapter<String>adapter;--定義一個數(shù)據(jù)和視圖之間的橋梁,數(shù)據(jù)在adapter中做處理,然后顯示到視圖上面@Override從R.java文件中調(diào)出sousuo頁面所需要的文本框TextView:1、name名字;2、miaoshu描述;3、shuliang數(shù)量;4、lujing路徑;5、jiage價格;6、id;7:biaoming說明protectedvoidonListItemClick(ListViewl,Viewv,intposition,longid){--是ListView對應(yīng)的響應(yīng)事件,一共有四個參數(shù):ListView就是用戶單擊項所在的列表;View就是我們單擊項的視圖;Position單擊在列表的位置;Id單擊項的idTextViewt1=(TextView)v.findViewById(R.id.text1);--從R文件中調(diào)出文本框t1TextViewt2=(TextView)v.findViewById(R.id.yin_miaoshu);--從R文件中調(diào)出描述商品的文本框t2TextViewt3=(TextView)v.findViewById(R.id.yin_shuliang);--從R文件中調(diào)出顯示商品數(shù)量的文本框t3TextViewt6=(TextView)v.findViewById(R.id.yin_id);--從R文件中調(diào)出顯示商品id的文本框t6in_biaoming);--從R文件中調(diào)出顯示說明信息的文本框t7TextViewt4=(TextView)v.findViewById(R.id.yin_lujing);--從R文件中調(diào)出顯示商品路徑信息的文本框t4TextViewt5=(TextView)v

溫馨提示

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

評論

0/150

提交評論