侯歡歡+李超軍
摘要:論文闡述了一款基于A(yíng)ndroid 平臺(tái)的校園跳蚤市場(chǎng)APP的設(shè)計(jì)與實(shí)現(xiàn),該系統(tǒng)采用C/S架構(gòu), MVC設(shè)計(jì)模式,用Java語(yǔ)言開(kāi)發(fā)。實(shí)現(xiàn)了個(gè)人信息管理、商品信息管理和購(gòu)物車(chē)管理和后臺(tái)管理四大模塊。系統(tǒng)界面良好,簡(jiǎn)單易用,大學(xué)生可以利用該APP發(fā)布閑置書(shū)物、電子產(chǎn)品等信息,也可以選購(gòu)自己需要的二手資源,為構(gòu)建節(jié)約型校園提供了一個(gè)良好的平臺(tái)。
關(guān)鍵詞:跳蚤市場(chǎng);Android;APP
中圖分類(lèi)號(hào):TP311.5 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-9416(2017)01-0172-02
Abstract:The design and implementation of a campus flea market APP for Android platform was described in the paper. The system that used C/S architecture and MVC design pattern was developed by java language. Four modules were achieved in the system: personal information management, product information management, shopping cart management and background management. The system interface is friendly, easy to use, students can not only publish books, electronic products and other idle information using the APP, but also buy second-hand resources they need, the APP can provide a good platform for the construction of a conservation oriented campus.
Key Words: Flea market; Android;APP
1 引言
校園跳蚤市場(chǎng)可以將學(xué)生的二手商品充分合理的利用[1],為了保持良好的校園環(huán)境和形象,現(xiàn)有的跳蚤市場(chǎng)不再是傳統(tǒng)的擺攤式,基本都是基于web的二手交易網(wǎng)站,但是傳統(tǒng)的web應(yīng)用不能滿(mǎn)足人們隨時(shí)隨地體驗(yàn)網(wǎng)絡(luò)應(yīng)用的需求。隨著4G及無(wú)線(xiàn)網(wǎng)絡(luò)的覆蓋范圍的擴(kuò)大和智能手機(jī)的普及,各類(lèi)手機(jī)客戶(hù)端應(yīng)用如井噴式的涌現(xiàn),而Android平臺(tái)開(kāi)放源碼,價(jià)格合理,應(yīng)用占有很大的市場(chǎng)份額,所以開(kāi)發(fā)一款免費(fèi)的基于A(yíng)ndroid的校園跳蚤市場(chǎng)的手機(jī)應(yīng)用程序,可以為廣大的學(xué)生提供了一個(gè)便捷、平等自主的交易平臺(tái)。學(xué)生們可以方便的發(fā)布、出售自己閑置的物品,解決了二手商品供應(yīng)者處理二手商品的麻煩,同時(shí)也為那些急需二手商品的同學(xué)提供了價(jià)格低廉、實(shí)用的物品[2]。該手機(jī)應(yīng)用不僅滿(mǎn)足廣大高校學(xué)子的需要,為需求雙方提供了一個(gè)共贏(yíng)的平臺(tái),還減少了資源浪費(fèi),減輕了環(huán)境負(fù)擔(dān),響應(yīng)“建設(shè)節(jié)約型校園”和“和諧校園”的號(hào)召[3]。
2 系統(tǒng)需求分析
基于A(yíng)ndroid 的校園跳蚤市場(chǎng)APP有兩類(lèi)角色:用戶(hù)和管理員。用戶(hù)就是注冊(cè)的學(xué)生,可以進(jìn)行個(gè)人信息管理、商品發(fā)布、商品搜索和瀏覽、將商品加入購(gòu)物車(chē)等功能;管理員則進(jìn)行后臺(tái)管理,主要是對(duì)前臺(tái)發(fā)布的商品信息進(jìn)行審核。系統(tǒng)客戶(hù)端采用Eclipse+ADT(Android Development Tools)插件+Android SDK,服務(wù)器端采用Tomcat搭建、MySQL管理數(shù)據(jù)庫(kù)、MyEclipse作為開(kāi)發(fā)環(huán)境。
2.1 系統(tǒng)數(shù)據(jù)流圖
校園跳蚤市場(chǎng)應(yīng)用可以劃分為用戶(hù)管理、商品管理、購(gòu)物車(chē)管理、后臺(tái)管理四大模塊。圖1為該系統(tǒng)的數(shù)據(jù)流圖。
2.2 系統(tǒng)功能模塊的設(shè)計(jì)
(1)用戶(hù)管理。本模塊包括:用戶(hù)登錄、注冊(cè)、注銷(xiāo)、修改個(gè)人信息(賬號(hào)、密碼、頭像等)。
(2)商品管理。本模塊包括:用戶(hù)發(fā)布商品、修改自己商品的狀態(tài)(已經(jīng)售出或正常顯示)、修改自己發(fā)布商品的具體信息、瀏覽其他人發(fā)布的商品信息、搜索滿(mǎn)足條件的商品。
(3)購(gòu)物車(chē)管理。本模塊包括:用戶(hù)將商品加入購(gòu)物車(chē)、對(duì)購(gòu)物車(chē)?yán)锩娴纳唐愤M(jìn)行操作。
(4)后臺(tái)管理。本模塊包括:管理員登錄、注冊(cè)、對(duì)商品審核。
3 系統(tǒng)總體架構(gòu)設(shè)計(jì)
(1)客戶(hù)端:采用MVC經(jīng)典設(shè)計(jì)架構(gòu)。MVC框架包括以下模塊:
①視圖層(View):Android 中采用XML布局文件進(jìn)行界面的描述。
②控制層(Controller):Android 的控制層的通常在A(yíng)ctivity上。
③模型層(Model):該層主要是業(yè)務(wù)邏輯的處理、數(shù)據(jù)庫(kù)的操作、網(wǎng)絡(luò)等的操作。
(2)服務(wù)器端:采用JavaEE經(jīng)典三層架構(gòu)。三層架構(gòu)包括以下模塊:
①web層:該層包括jsp和Servlet組件,jsp進(jìn)行的頁(yè)面的展示。Servlet處理頁(yè)面數(shù)據(jù)的流轉(zhuǎn)。
②Service層(業(yè)務(wù)邏輯層):該層包括數(shù)據(jù)的業(yè)務(wù)邏輯處理,以及數(shù)據(jù)封裝javabean。整個(gè)應(yīng)用復(fù)雜的業(yè)務(wù)邏輯都在該層處理。Javabean負(fù)責(zé)封裝數(shù)據(jù)。
③Dao層(數(shù)據(jù)訪(fǎng)問(wèn)層):該層用于訪(fǎng)問(wèn)數(shù)據(jù)庫(kù)。
本系統(tǒng)采用MySQL進(jìn)行數(shù)據(jù)的存儲(chǔ)和管理,數(shù)據(jù)庫(kù)名稱(chēng)為schoolproducts,包括用戶(hù)表(users)、商品表(products)、購(gòu)物車(chē)表(cart)、管理員表(admin)四張表。
4 系統(tǒng)實(shí)現(xiàn)
4.1 客戶(hù)端功能設(shè)計(jì)與實(shí)現(xiàn)
(1)用戶(hù)登錄。用戶(hù)點(diǎn)擊應(yīng)用圖標(biāo)進(jìn)入到logo界面后跳轉(zhuǎn)到登錄界面,用戶(hù)輸入用戶(hù)名和密碼,程序讀取到輸入框中的內(nèi)容進(jìn)行校驗(yàn)后,封裝以參數(shù)形式發(fā)送給服務(wù)器處理,服務(wù)器端會(huì)根據(jù)參數(shù)到數(shù)據(jù)庫(kù)中查詢(xún)用戶(hù)是否存在且密碼是否正確,服務(wù)器將json數(shù)據(jù)返回給客戶(hù)端,客戶(hù)端接收到數(shù)據(jù)進(jìn)行解析,根據(jù)不同內(nèi)容做不同響應(yīng)。
(2)用戶(hù)注冊(cè)。用戶(hù)在登錄界面點(diǎn)擊新用戶(hù)進(jìn)入注冊(cè)界面:在注冊(cè)界面輸入相關(guān)信息,點(diǎn)擊注冊(cè)按鈕進(jìn)行注冊(cè)。
(3)修改個(gè)人信息。修改個(gè)人包括:基本信息、密碼和個(gè)人頭像。用戶(hù)點(diǎn)擊個(gè)人中心進(jìn)入修改個(gè)人信息界面后,修改注冊(cè)時(shí)候填寫(xiě)的信息,點(diǎn)擊保存。用戶(hù)進(jìn)入修改密碼界面之后,先填寫(xiě)當(dāng)前密碼(舊密碼),在填寫(xiě)兩次密碼。修改個(gè)人頭像時(shí)點(diǎn)擊個(gè)人頭像后進(jìn)入更換頭像界面,用戶(hù)此時(shí)可以選擇拍照或者從本地圖片庫(kù)中選擇圖片進(jìn)行更換,選定后將圖片文件上傳給服務(wù)器,服務(wù)器會(huì)將新的圖片文件存儲(chǔ)到服務(wù)器中。
(4)商品發(fā)布。用戶(hù)進(jìn)入發(fā)布商品界面后:填寫(xiě)商品信息,添加圖片,選擇發(fā)布商品的類(lèi)型,填寫(xiě)商品簡(jiǎn)介、價(jià)格、數(shù)量、描述,交易地點(diǎn)、手機(jī)號(hào)碼、微信號(hào)碼。填寫(xiě)完畢后,點(diǎn)擊發(fā)表。程序會(huì)對(duì)用戶(hù)輸入的信息進(jìn)行校驗(yàn),校驗(yàn)通過(guò)后,以參數(shù)的形式發(fā)送給服務(wù)器端進(jìn)行處理??蛻?hù)端接收到響應(yīng)消息后,進(jìn)行顯示。
(5)商品修改。用戶(hù)進(jìn)入我的商品界面后點(diǎn)擊商品條目進(jìn)入商品界面,點(diǎn)擊修改進(jìn)入修改界面,用戶(hù)修改商品信息,點(diǎn)擊保存,以參數(shù)的形式發(fā)送給服務(wù)器處理,服務(wù)器根據(jù)商品id到數(shù)據(jù)庫(kù)商品表中找到對(duì)應(yīng)的商品對(duì)其進(jìn)行更新。處理完成后,將json數(shù)據(jù)返回給客戶(hù)端。
(6)商品搜索。用戶(hù)進(jìn)入分類(lèi)頁(yè)面后,可以點(diǎn)擊分類(lèi)條目,點(diǎn)擊條目后客戶(hù)端會(huì)根據(jù)商品類(lèi)型請(qǐng)求服務(wù)器?;蛘哂脩?hù)也可以在分類(lèi)頁(yè)面的輸入框內(nèi)輸入內(nèi)容進(jìn)行商品搜索。
(7)購(gòu)物車(chē)管理。用戶(hù)查找到自己滿(mǎn)意的商品后,可以在商品詳情頁(yè)面點(diǎn)擊加入購(gòu)物車(chē)按鈕。在購(gòu)物車(chē)界面可以進(jìn)行商品數(shù)量的增減,頁(yè)面下端自動(dòng)結(jié)算商品價(jià)格。長(zhǎng)點(diǎn)擊商品條目時(shí)進(jìn)行刪除動(dòng)作,刪除時(shí)客戶(hù)端將點(diǎn)擊商品條目的id,發(fā)送到服務(wù)器,服務(wù)器收到請(qǐng)求后,攜帶商品id查找購(gòu)物車(chē)表,將其對(duì)應(yīng)的數(shù)據(jù)刪除。
4.2 服務(wù)器端功能設(shè)計(jì)與實(shí)現(xiàn)
(1)管理員登錄。管理員進(jìn)入login.jsp頁(yè)面后在輸入框中輸入用戶(hù)名、密碼。提交表單給后臺(tái)處理。后臺(tái)會(huì)在數(shù)據(jù)庫(kù)中查找用戶(hù)名、密碼是否正確。然后返回消息給jsp頁(yè)面。
(2)管理員注冊(cè)。管理員進(jìn)入register.jsp頁(yè)面后在輸入框中填寫(xiě)用戶(hù)名、密碼、確認(rèn)密碼后點(diǎn)擊注冊(cè),將數(shù)據(jù)提交給后臺(tái)處理。后臺(tái)會(huì)在數(shù)據(jù)庫(kù)管理員表中查找是否有重名的用戶(hù)名,如果沒(méi)有將數(shù)據(jù)插入到管理員表中。
(3)審核商品。大學(xué)生發(fā)布的商品是否合法,能否進(jìn)行交易是需要管理員進(jìn)行審核的,如果審核通過(guò)則商品發(fā)布成功,否則就不可以進(jìn)行交易。管理員進(jìn)入到首頁(yè)之后會(huì)有未審核的商品信息列出在頁(yè)面上,管理員點(diǎn)擊審核按鈕,進(jìn)入商品詳情頁(yè),然后管理員可以點(diǎn)擊審核通過(guò)或者未通過(guò)。
5 結(jié)語(yǔ)
本系統(tǒng)實(shí)現(xiàn)了一個(gè)基于A(yíng)ndroid 平臺(tái)的校園跳蚤市場(chǎng)APP,客戶(hù)端可以進(jìn)行用戶(hù)的注冊(cè)、登陸、個(gè)人信息管理、二手商品的發(fā)布、商品搜索和購(gòu)物車(chē)管理,服務(wù)器端實(shí)現(xiàn)了管理員的注冊(cè)、登陸以及商品的審核。該手機(jī)應(yīng)用程序滿(mǎn)足了高校校園二手商品信息交流的基本需求,方便廣大學(xué)生及時(shí)獲取出售與購(gòu)買(mǎi)所需物品的信息,使得二手資源被充分利用。但目前系統(tǒng)還沒(méi)有在線(xiàn)支付功能,買(mǎi)賣(mài)雙方需要線(xiàn)下交易,這樣能保證交易的安全性和可靠性,后期考慮對(duì)系統(tǒng)進(jìn)行支付功能的完善。
參考文獻(xiàn)
[1]馮宇.校園交易平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)[D].電子科技大學(xué),2012:10-12.
[2]葉莖,何瓊.基于JSP.NET的網(wǎng)上二手交易平臺(tái)的設(shè)計(jì)[J].電腦知識(shí)與技術(shù),2010:11-13.
[3]鄭建華,霍仁崇,甘秀娜.校園二手商品交易平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)光盤(pán)軟件與應(yīng)用,2012:15-20.
[4]張利國(guó),龔海平,王植萌,編著.Android 移動(dòng)開(kāi)發(fā)入門(mén)與進(jìn)階[M].人民郵電出版社, 2009.