劉波平 胡敏 楊國強(qiáng) 湯輝 付康
摘要:根據(jù)養(yǎng)殖場的實(shí)際生產(chǎn)情況研發(fā)一套APP使傳統(tǒng)應(yīng)用系統(tǒng)的功能拓展到智能終端。前端客戶端基于Andriod系統(tǒng)進(jìn)行開發(fā),后臺服務(wù)器端基于J2EE框架進(jìn)行開發(fā)并以Web Service的方式實(shí)現(xiàn)與前端移動APP的數(shù)據(jù)交互。
關(guān)鍵詞:安卓系統(tǒng);養(yǎng)殖;Web 服務(wù)
中圖分類號:TP311文獻(xiàn)標(biāo)識碼:A
Abstract:According to the real production situation in breeding farm, an application on smart terminal equipment implementing the function of traditional software application can be developed. The frontend client is developed based on Andriod system, the background server is developed based on J2EE, which provides web service to interact with the front-end app.
Key words:andriod;breeding;Web service
1引言
互聯(lián)網(wǎng)+農(nóng)業(yè)的本質(zhì)是將互聯(lián)網(wǎng)的技術(shù)創(chuàng)新、理念創(chuàng)新、模式創(chuàng)新充分應(yīng)用到農(nóng)業(yè)產(chǎn)業(yè)鏈的各個環(huán)節(jié),旨在推動農(nóng)業(yè)的轉(zhuǎn)型與升級,最終把農(nóng)業(yè)引領(lǐng)到智慧農(nóng)業(yè)的道路。本文依托生豬、肉牛、肉雞等特色禽畜養(yǎng)殖產(chǎn)品,集成應(yīng)用現(xiàn)代信息化技術(shù),探索互聯(lián)網(wǎng)+養(yǎng)殖產(chǎn)業(yè)的融合發(fā)展之路。
隨著物聯(lián)網(wǎng)技術(shù)、計(jì)算機(jī)技術(shù)、網(wǎng)絡(luò)通信技術(shù)等的發(fā)展,很多規(guī)模化的禽畜養(yǎng)殖企業(yè)搭建了圈舍環(huán)境監(jiān)測與控制系統(tǒng)、視頻信息采集系統(tǒng)、綜合管理系統(tǒng)等軟硬件平臺。然而,傳統(tǒng)管理軟件有個最大的劣勢,就是不能脫離PC而存在,必須得打開電腦進(jìn)入系統(tǒng)才能進(jìn)行查詢、收錄等各種操作。目前,智能手機(jī)的普及和移動業(yè)務(wù)應(yīng)用的飛速發(fā)展使得信息化通信技術(shù)與禽畜養(yǎng)殖業(yè)的結(jié)合成為了可能。本文將研究的即是基于Android智能終端的養(yǎng)殖管理助手的開發(fā)與實(shí)現(xiàn),利用手機(jī)、平板電腦等設(shè)備通過2G/3G/4G或者 WIFI連接互聯(lián)網(wǎng),通過APP應(yīng)用輔助生產(chǎn)管理人員收集養(yǎng)殖生產(chǎn)活動中的各種數(shù)據(jù),實(shí)時(shí)查看生產(chǎn)環(huán)境信息(視頻和數(shù)據(jù)),解決生產(chǎn)過程中出現(xiàn)的各類問題,以及快速查詢產(chǎn)品溯源信息等。
2系統(tǒng)設(shè)計(jì)
2.1總體架構(gòu)
從技術(shù)實(shí)現(xiàn)角度上可將養(yǎng)殖管理助手分成移動客戶端和后臺服務(wù)器端兩個部分。移動客戶端是實(shí)現(xiàn)移動APP的開發(fā),將傳統(tǒng)應(yīng)用系統(tǒng)的功能拓展到智能終端,采用Android系統(tǒng)作為移動終端的軟件開發(fā)平臺,Andriod平臺具有技術(shù)完整統(tǒng)一、開源免費(fèi)、拓展性強(qiáng)等特點(diǎn)且市場潛力巨大。后臺服務(wù)器端承擔(dān)了養(yǎng)殖信息化核心業(yè)務(wù)的處理,采用J2EE框架進(jìn)行開發(fā)并提供接口以Web Service的方式用于與前端移動APP的數(shù)據(jù)交互。
2.2系統(tǒng)客戶端
本文研究的養(yǎng)殖管理助手將從實(shí)際生產(chǎn)管理的角度出發(fā),為企業(yè)生產(chǎn)管理人員提供各種手持端的輔助功能,如登錄、首頁、養(yǎng)殖、問專家、百科和追溯等。具體功能如下圖1所示。
登錄:通過用戶名和密碼,驗(yàn)證生產(chǎn)管理用戶身份。
首頁:從生產(chǎn)管理者的角度出發(fā),將其最關(guān)心的內(nèi)容加載到首頁中,同時(shí)配合快捷操作導(dǎo)航,為使者提供更加貼心的操作體驗(yàn)。
首頁-菜單-關(guān)于:介紹本系統(tǒng)承接單位和功能說明。
首頁-菜單-更新:顯示當(dāng)前版本及更新最新版。
養(yǎng)殖:根據(jù)用戶所負(fù)責(zé)的區(qū)域信息,以圖文列表的方式加載養(yǎng)殖信息。
養(yǎng)殖-菜單-掃二維: 通過掃描“區(qū)域標(biāo)簽”,快速加載該區(qū)域的養(yǎng)殖信息
養(yǎng)殖-菜單-養(yǎng)殖歷史: 根據(jù)年份篩選養(yǎng)殖檔案記錄,默認(rèn)當(dāng)年,以圖文列表方式顯示。
養(yǎng)殖-詳細(xì):顯示當(dāng)前養(yǎng)殖記錄詳細(xì)信息、所在區(qū)域信息和生長環(huán)境最新信息,以及添加農(nóng)事記錄的操作導(dǎo)航。
養(yǎng)殖-詳細(xì)-菜單-設(shè)備控制:顯示當(dāng)前環(huán)境數(shù)據(jù)和區(qū)域可控制設(shè)備情況,并提供設(shè)備控制操作。
養(yǎng)殖-詳細(xì)-菜單-視頻控制:顯示當(dāng)前環(huán)境數(shù)據(jù)和視頻設(shè)備情況(槍機(jī)和球機(jī)),通過切換不同的攝像頭查看不同方位的視頻情況,并且可對攝像頭拉進(jìn)、拉遠(yuǎn)、左右上下旋轉(zhuǎn)等控制。
養(yǎng)殖-詳細(xì)-菜單-環(huán)境數(shù)據(jù):根據(jù)環(huán)境因子,查看歷史數(shù)據(jù)記錄和近7天、15天、30天統(tǒng)計(jì)圖。
養(yǎng)殖-詳細(xì)-菜單-農(nóng)事記錄:文字列表方式顯示農(nóng)事記錄,內(nèi)容為操作時(shí)間,操作人,活動內(nèi)容,投入品使用情況,備注,圖片(3張)。
養(yǎng)殖-詳細(xì)-添加農(nóng)事:內(nèi)容為操作時(shí)間,操作人,活動內(nèi)容,投入品使用情況,備注,圖片(3張),可支持掃描二維碼快速完成活動內(nèi)容選擇。
問專家:顯示用戶提問列表,含圖片和回復(fù)內(nèi)容。
問專家-專家詳細(xì):點(diǎn)擊回復(fù)問題的專家頭像,查看專家信息。
問專家-菜單-提問:內(nèi)容為問題簡述、問題描述、圖片(3張)、問題環(huán)境區(qū)域選取(1個)。
問專家-菜單-專家群:顯示所有專家群的信息,微信群二維碼、群介紹。
百科:按分類檢索以及通過關(guān)鍵字查詢知識,以文字列表方式顯示查詢結(jié)果。
百科-知識詳細(xì):查看知識詳細(xì),內(nèi)容包括圖片、標(biāo)題、內(nèi)容、相關(guān)資料下載。
追溯:掃描或輸入二維碼,快速查詢履歷及養(yǎng)殖信息。
追溯-追溯詳細(xì):查看產(chǎn)品基本信息,并以頁簽方式顯示農(nóng)事記錄、銷售記錄等信息。
2.3系統(tǒng)服務(wù)端
本文中服務(wù)器端基于Java語言進(jìn)行開發(fā), 采用Eclipse作為開發(fā)工具、SQL Server 2008作為數(shù)據(jù)庫、Tomcat 7.0作為web服務(wù)器。系統(tǒng)服務(wù)器端的作用是為實(shí)現(xiàn)客戶端界面的各項(xiàng)功能提供接口,根據(jù)客戶端發(fā)送過來的請求執(zhí)行相關(guān)業(yè)務(wù)流程(如增加、刪除、修改,查詢等)并返回結(jié)果。因此可采用Web Service的方式提供一系列通過Web鏈接進(jìn)行調(diào)用的API接口。在服務(wù)器端,使用Java語言定義接口SEI(service endpoint interface)并提供相關(guān)的實(shí)現(xiàn),通過調(diào)用JAX-WS的服務(wù)發(fā)布接口就可以將其發(fā)布為Web Service接口。在客戶端,用戶可以通過JAX-WS的API創(chuàng)建一個代理(用本地對象來替代遠(yuǎn)程的服務(wù))來實(shí)現(xiàn)對于遠(yuǎn)程服務(wù)器端的調(diào)用。
3系統(tǒng)實(shí)現(xiàn)
3.1服務(wù)器端功能的實(shí)現(xiàn)
3.1.1Web Service的實(shí)現(xiàn)
本文中采用Apache CXF并集成Spring 作為開發(fā)Web 服務(wù)的框架,登陸Apache網(wǎng)站下載相應(yīng)的jar包,開發(fā)要點(diǎn)如下:
1.新建一個“Web Service Project”,命名為“BreedWS”,在web.xml文件中集成Spring并配置Servlet。
3.1.3視頻控制模塊的實(shí)現(xiàn)
在養(yǎng)殖場區(qū)域內(nèi)安裝網(wǎng)絡(luò)攝像機(jī),選擇一臺服務(wù)器用來搭建由網(wǎng)絡(luò)攝像機(jī)廠商提供的視頻監(jiān)控服務(wù)平臺。采用JAVA代碼訪問平臺IP,調(diào)用平臺提供的視頻控制接口實(shí)現(xiàn)對網(wǎng)絡(luò)攝像機(jī)的遠(yuǎn)程操作。
3.2客戶端功能的實(shí)現(xiàn)
3.2.1Andriod開發(fā)環(huán)境的搭建
搭建Andriod客戶端的開發(fā)環(huán)境,步驟如下:
1.安裝JDK配置java環(huán)境;
2.下載Eclipse開發(fā)工具并安裝ADT(Andriod Development Tools)插件;
3.下載Andriod SDK包,并在安裝了ADT的Eclipse環(huán)境上配置Andriod SDK的路徑;
4.最后,在Eclipse工具下新建一個Andriod虛擬設(shè)備,構(gòu)建Android運(yùn)行的仿真器環(huán)境。
環(huán)境配置好之后即可在Eclipse的ADT環(huán)境下新建一個“Andriod Project”,逐步實(shí)現(xiàn)頁面布局和各項(xiàng)功能。
3.2.2客戶端數(shù)據(jù)庫的實(shí)現(xiàn)
SQLite是一款輕量級數(shù)據(jù)庫,在嵌入式設(shè)備中,占用的資源非常少可能只需要幾百KB。Android 在運(yùn)行時(shí)(runtime)集成了 SQLite, 每個 Android 應(yīng)用程序都可以使用 SQLite 數(shù)據(jù)庫。通過繼承 SQLiteOpenHelper 類創(chuàng)建數(shù)據(jù)庫,調(diào)用 getReadableDatabase() 或 getWriteableDatabase() 方法得到 SQLiteDatabase 實(shí)例進(jìn)行創(chuàng)建表、插入數(shù)據(jù)、刪除表等數(shù)據(jù)庫操作。
3.2.3客戶端調(diào)用服務(wù)器端Web服務(wù)的實(shí)現(xiàn)
手機(jī)的Web Service客戶端比較常用 的SDK有 Ksoap2,下載相應(yīng)的JAR包同時(shí)在Andriod工程中引用這個JAR包。手機(jī)端調(diào)用Web Service的步驟如下:
1.實(shí)例化SoapObject 對象,指定Web Service的命名空間和調(diào)用方法,如果調(diào)用的方法有參數(shù),則需要給參數(shù)賦值;
2.獲得序列化的SoapSerializationEnvelope,設(shè)置SOAP請求信息(第一步中的SoapObject對象),并注冊該Envelope;
3.構(gòu)建傳輸對象AndroidHttpTransport,指定調(diào)用的WSDL文檔URL;
4.通過傳輸對象調(diào)用web service方法,指定命名空間、方法名稱、Envelope對象;
5.解析返回的數(shù)據(jù)并運(yùn)用到手機(jī)客戶端。
3.2.4客戶端頁面的設(shè)計(jì)
登入養(yǎng)殖管理助手頁面之前需要設(shè)置服務(wù)器鏈接地址,如下圖2所示。
4結(jié)束語
本文研究的基于Andriod智能終端的養(yǎng)殖管理助手解決了以往信息化辦公所必須遵循的地域、場所限制,提高了養(yǎng)殖生產(chǎn)信息的采集效率,實(shí)現(xiàn)了對養(yǎng)殖場的實(shí)時(shí)監(jiān)測,擴(kuò)大了產(chǎn)品追溯體系的覆蓋面。由此可以看出,智能終端在養(yǎng)殖業(yè)信息化建設(shè)中可以發(fā)揮重要作用,對推動互聯(lián)網(wǎng)+農(nóng)業(yè)的體系建設(shè)、豐富農(nóng)業(yè)互聯(lián)網(wǎng)管理服務(wù)模式產(chǎn)生積極影響。
參考文獻(xiàn)
[1]顧玲艷, 李鵬, 許永斌.畜牧業(yè)互聯(lián)網(wǎng)+戰(zhàn)略實(shí)施現(xiàn)狀與建議 [J].中國畜牧雜志, 2015, 51(22):15-19.
[2]李越.基于Android的地質(zhì)災(zāi)害野外調(diào)查信息采集系統(tǒng)的設(shè)計(jì)及實(shí)現(xiàn)[D].昆明:云南大學(xué), 2015.
[3]張佳,和迎.基于Andriod系統(tǒng)的思政課程移動教學(xué)系統(tǒng)設(shè)計(jì) [J]. 網(wǎng)絡(luò)與信息工程, 2015(1):110-112.
[4]李如平, 徐珍玉.基于ASP.NET和移動andriod平臺的物聯(lián)網(wǎng)系統(tǒng) [J]. 佳木斯大學(xué)學(xué)報(bào):自然科學(xué)版, 2015, 33(5):710-714.
[5]仇明.Andriod技術(shù)在遠(yuǎn)程健康監(jiān)護(hù)系統(tǒng)中的應(yīng)用[J]. 江蘇科技信息, 2015(27):65-66.
[6]馬常霞,王文明,張占強(qiáng),等.基于安卓的閘站智能調(diào)度系統(tǒng)的研發(fā) [J] .淮海工學(xué)院學(xué)報(bào):自然科學(xué)版, 2015, 24(4):17-21.
[7]姜建華,張廣云.一種基于Andriod的氣息服務(wù)系統(tǒng) [J].計(jì)算機(jī)與現(xiàn)代化, 2015 (10):69-72.
[8]郭奇志,陳光,任卓君,等.基于Andriod智能手機(jī)的實(shí)驗(yàn)室管理系統(tǒng) [J].計(jì)算機(jī)與現(xiàn)代化, 2015 (10):73-76.
[9]張穎. Web Services在ERP系統(tǒng)中的應(yīng)用研究 [J]. 信息技術(shù)與信息化, 2015 (12):124-127.
[10]張胤,尹長青. 基于Web服務(wù)的醫(yī)療自助服務(wù)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) [J]. 電腦知識與技術(shù), 2015,11(32):69-71.
[11]劉菲,郝風(fēng)杰.云計(jì)算環(huán)境下Web服務(wù)集成系統(tǒng)的研究[J].計(jì)算機(jī)科學(xué), 2015,42(11A):417-421.
[12]朱威. Android開發(fā)環(huán)境中的SQLite性能優(yōu)化 [J]. 湖南郵電職業(yè)技術(shù)學(xué)院學(xué)報(bào), 2015,14(1):41-43.
[13]劉仕華. 基于Android的SQLite數(shù)據(jù)庫操作管理 [J]. 信息化建設(shè), 2015 (9):252-252.