黃宏康 王代君
【摘要】筆記分享多功能學(xué)習(xí)交流移動社交軟件極大地提升了知識在社交媒體平臺進(jìn)行信息發(fā)布的傳播力,方便學(xué)子交流,更方便知識傳承,使學(xué)習(xí)者可以隨時隨地方便地獲取自己需求的知識信息,根據(jù)索引標(biāo)簽就能夠找到對應(yīng)的圖集進(jìn)行查看,其中還可以評論,可以增強(qiáng)交互性和信息傳播性。
【關(guān)鍵詞】筆記分享搜索學(xué)習(xí)社交移動端軟件;Android;互聯(lián)網(wǎng)+;SSH后端框架
一、前言
近年來,“互聯(lián)網(wǎng)+”的熱潮正席卷整個社會,不管“+”什么,都會發(fā)生神奇變化,深刻地改變了人類的思維、生產(chǎn)、生活和學(xué)習(xí)方式,提高了生產(chǎn)力,促進(jìn)了社會發(fā)展。
研究Android平臺上應(yīng)用開發(fā)原理,以開發(fā)近兩年網(wǎng)絡(luò)信息交流分享的新方式——基于筆記分享多功能學(xué)習(xí)交流移動社交軟件,它在已有的通過文字、圖片實現(xiàn)互動之外,能進(jìn)行筆記分享。在這種信息化的時代,我們分享的都是電子檔的書,出版的紙質(zhì)書本數(shù)量是有限的,但在社會發(fā)展過程中,有各種各樣的奇思妙想在個人的筆記中,凝結(jié)成了智慧結(jié)晶筆記。而智慧結(jié)晶筆記本即使拍下來上傳到網(wǎng)上,也會淹沒在浩如煙海的數(shù)據(jù)里,所以需要對筆記圖片進(jìn)行標(biāo)簽化管理。在現(xiàn)在這個大數(shù)據(jù)時代,數(shù)據(jù)管理愈發(fā)重要,大數(shù)據(jù)是未來的趨勢。筆記分享,當(dāng)我們發(fā)送筆記圖片時候,給它上一個標(biāo)簽,能夠使筆記信息更為精準(zhǔn)被索引。多個標(biāo)簽有助于該筆記集的索引范圍擴(kuò)大。通過索引標(biāo)簽?zāi)軌蚋泳_找到它,這是此次項目的創(chuàng)新,上傳圖片文件讓交互效果提高,這種多功能社交APP將成為時代主流,為移動互聯(lián)網(wǎng)用戶提供一種集生產(chǎn)與共享于一體的社交新形式。同時,本項目中將引入插件式開發(fā)、程序模塊化、服務(wù)器技術(shù),云存儲等新興技術(shù)及其實際應(yīng)用等。
二、APP的功能模塊組成
整個APP包括Android部分和JavaEE部分,Android部分是APP開發(fā)中所需的軟件平臺,由Android Studio開發(fā),包括以下模塊。
(一)獲取筆記集
此模塊能夠在主界面顯示筆記集的第一張圖片以及上傳者名稱和對應(yīng)標(biāo)簽、筆記簡介。根據(jù)上傳的信息顯示,同時能夠根據(jù)不同的用戶顯示對該用戶上傳過的筆記集進(jìn)行刪除操作。
點擊對應(yīng)筆記集能夠進(jìn)入詳細(xì)筆記集頁面,通過左右滑動瀏覽全部筆記圖片的內(nèi)容。還可以放大或縮小進(jìn)行觀看,可以給學(xué)習(xí)者提供良好的體驗。
(二)上傳筆記集
通過選擇本地筆記圖片或者拍照筆記圖片進(jìn)行上傳,其中還可以對其賦予標(biāo)簽以及簡介,上傳時通過http請求經(jīng)由服務(wù)端action層校驗后存入數(shù)據(jù)庫表中。
(三)對筆記集進(jìn)行評論
在主界面獲取對應(yīng)的數(shù)據(jù)流,然后通過界面?zhèn)髦祦盹@示評論,在圖集對應(yīng)頁面提供界面來上傳筆記集。
(四)搜索筆記集
通過筆記集標(biāo)簽在APP端進(jìn)行相關(guān)字段的上傳,然后在服務(wù)器端進(jìn)行模糊查詢,把相關(guān)數(shù)據(jù)通過json返回解析顯示到APP端以達(dá)到筆記分享的目標(biāo)。
服務(wù)器端系統(tǒng)主要選用mysql數(shù)據(jù)庫,由于目前主流技術(shù)web輕量級應(yīng)用使用的數(shù)據(jù)庫是mysql,這樣更具有靈活性。其中還采用SSH框架,采用hibernate框架創(chuàng)建數(shù)據(jù)庫和一些數(shù)據(jù)表,同時進(jìn)行增、刪、改、查等操作。還使用了struts2來提供訪問接口,實現(xiàn)圖片、簡介、標(biāo)簽與用戶頭像等信息的存儲和管理。其中的spring框架有著IOC和AOP的特點,可以對對象進(jìn)行統(tǒng)一化管理,以便和APP端交互,同時還可以為后期拓展提供良好靈活的接口。
三、筆記分享搜索系統(tǒng)設(shè)計與實現(xiàn)
(一)APP模塊設(shè)計
APP模塊主要采用MVC架構(gòu)實現(xiàn),其中涉及Android系統(tǒng)應(yīng)用的UI層設(shè)計,如各個窗體的界面設(shè)計;同時也有l(wèi)ogic層架構(gòu)代碼實現(xiàn),比如intent跳轉(zhuǎn)傳參,等等。還有與后端圖片交互技術(shù)用戶上傳圖片以及從服務(wù)端獲取數(shù)據(jù)流顯示圖片,可以通過okhttp請求實現(xiàn)請求服務(wù)端數(shù)據(jù),主界面選用listview顯示筆記圖集相關(guān)信息,顯示的信息有筆記集的第一張圖片和三個標(biāo)簽、簡介、作者名稱等??梢栽谧泳€程進(jìn)行http請求,然后通過handler來刷新UI。其中文件流的上傳處理方案可以用原生http請求Bitmap進(jìn)行封裝,也可以通過開源框架二次封裝來進(jìn)行上傳,實現(xiàn)文件上傳。為了解決與服務(wù)器交互緩慢的情況,例如上傳圖片后在主界面暫時還刷新不出圖片效果,可以通過線程Sleep并使用DialogProgress給出提示增強(qiáng)用戶體驗。其中,由于本項目涉及的Activity較多,容易混亂,所以可以設(shè)置全局變量存放Activity并在使用后finish()完成釋放提高利用率。關(guān)于常量的處理可以設(shè)置靜態(tài)常量類,通過常量池來實現(xiàn)解耦合方案,例如服務(wù)端的域名更改和intent之間用戶名傳值。
(二)服務(wù)端模塊設(shè)計
使用SSH(Spring+Struts2+Hibernate)搭起來的java后端技術(shù)框架,數(shù)據(jù)庫使用的是Mysql數(shù)據(jù)庫,我們的數(shù)據(jù)交互使用的是json數(shù)據(jù)流進(jìn)行交互。通過自己購買阿里云服務(wù)器進(jìn)行后端服務(wù)器的搭建,能對外網(wǎng)公開訪問,自己運(yùn)維后端。主要包括以下模塊:
1.用戶的登錄和注冊筆記圖片的上傳分享和管理;
2.筆記圖片的評論添加、刪除和修改;
3.用戶的信息修改;
4.數(shù)據(jù)庫表的生成;
5.用戶登錄時的校驗。
(三)數(shù)據(jù)庫端模塊設(shè)計
在眾多的數(shù)據(jù)庫中,根據(jù)實際選用mysql作為服務(wù)器端的數(shù)據(jù)庫,它是一款輕量級的數(shù)據(jù)庫,是以后端交互應(yīng)用為設(shè)計目標(biāo)。
通過對整個APP和服務(wù)端各功能和數(shù)據(jù)分析,數(shù)據(jù)庫共設(shè)計了4個數(shù)據(jù)結(jié)構(gòu):圖集、圖集詳細(xì)信息、用戶、評論。
根據(jù)以上所設(shè)計的數(shù)據(jù)結(jié)構(gòu),將其轉(zhuǎn)換為以之對應(yīng)邏輯結(jié)構(gòu)表:用戶表、圖集表、圖集詳細(xì)信息表、評論表。再通過使用 SQL 語言設(shè)計得到數(shù)據(jù)庫和數(shù)據(jù)表。至此,整個后端數(shù)據(jù)架構(gòu)的設(shè)計完成。
四、結(jié)束語
“互聯(lián)網(wǎng)+”環(huán)境下筆記分享搜索學(xué)習(xí)社交移動端軟件是在 Android+JavaEE開發(fā)環(huán)境下進(jìn)行開發(fā)的,整個平臺能正常工作,完成筆記圖集的分享和評論交流。同時也出現(xiàn)了一些問題,有待今后從如下方面改進(jìn):第一,服務(wù)端響應(yīng)插入數(shù)據(jù)較慢,有待改善;第二,網(wǎng)絡(luò)對于數(shù)據(jù)量大的信息傳輸還存在一些困難,常在傳輸過程中出現(xiàn)數(shù)據(jù)信息延遲問題;第三,在整體軟件上功能都能實現(xiàn),但是架構(gòu)搭建上過于復(fù)雜。
【參考文獻(xiàn)】
[1]蓋索林.Android開發(fā)入門指南[M].2版.北京:人民郵電出版社,2012.
[2]靳巖,姚尚朗.Android入門開發(fā)與實踐[M].北京:人民郵件出版社,2012.
[3]李佐彬.Android開發(fā)入門與實戰(zhàn)體驗[M].北京:機(jī)械工業(yè)出版社,2010.
[4]伯內(nèi)特,田俊靜,張波,等.Android基礎(chǔ)教程[M].3版.北京:人民郵電出版社.
[5]卞慧敏.淺議Java網(wǎng)絡(luò)聊天工具設(shè)計[J].科技展望,2015(36):120.
[6]葛曼穎.基于JAVA技術(shù)的實時移動學(xué)習(xí)系統(tǒng)的研究與實現(xiàn)[J].科技展望,2016(03):16-17.
[7]李代平.軟件工程[M].2版.北京:清華大學(xué)出版社,2012.