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