環(huán)境監(jiān)測系統(tǒng)的在軟件組成上的重將是遠(yuǎn)程服務(wù)器和Android客戶端。此外還有數(shù)據(jù)庫。這三者的關(guān)系可以說是相輔相成。以下是詳細(xì)介紹。
遠(yuǎn)程服務(wù)器作為數(shù)據(jù)信息的統(tǒng)一管理平臺,為數(shù)據(jù)的科學(xué)分析和永久保存提供保障。Android客戶端有單機(jī)和網(wǎng)絡(luò)兩種工作模式。當(dāng)客戶端工作在單機(jī)模式下時直接與硬件系統(tǒng)交互,完成空氣質(zhì)量數(shù)據(jù)的展現(xiàn)、初步分析與本地存儲等任務(wù)。此時Android客戶端與硬件系統(tǒng)組成了一個便攜式的空氣質(zhì)量監(jiān)測儀。在網(wǎng)絡(luò)模式下時,客戶端通GIS地圖頁面展現(xiàn)用戶附近監(jiān)測點(diǎn)位信息,并支持?jǐn)?shù)據(jù)的實(shí)時調(diào)取與歷史查詢。另外用戶可在網(wǎng)絡(luò)模式下瀏覽監(jiān)測點(diǎn)位的實(shí)景圖。
遠(yuǎn)程服務(wù)器采用了J2EE的設(shè)計架構(gòu),使用EJB組件進(jìn)行數(shù)據(jù)摩的操作與管理,使用Servlet組件為遠(yuǎn)程訪問提供接口EJB作為一種Java持久化工具,為J2EE架構(gòu)下的數(shù)據(jù)庫操作提供了方便,使對數(shù)據(jù)庫的增刪改查如同平常的函數(shù)調(diào)用,省去了JDBC下的繁瑣步驟,極大的提高了程序的開發(fā)效率。Servlet其實(shí)就是Java的一個類,它被用來擴(kuò)展服務(wù)器的性能,提供了一個"請求-響應(yīng)"的工作模式,完成與客戶端的數(shù)據(jù)交互。
Android客戶端與遠(yuǎn)程服務(wù)器端的數(shù)據(jù)交互才用了Http Post的形式??蛻舳税l(fā)起連接請求,服務(wù)器接收請求并解析請求數(shù)據(jù),根據(jù)請求數(shù)據(jù)去數(shù)據(jù)庫調(diào)取數(shù)據(jù),然后將數(shù)據(jù)打包成json格式返回到客戶端,客戶端接收到響應(yīng)后解析json數(shù)據(jù)并完成界面刷新等操作。不管是請求數(shù)據(jù)還是響應(yīng)數(shù)據(jù),為保證數(shù)據(jù)安全,所有需要在網(wǎng)絡(luò)中傳遞的數(shù)據(jù),都要采用AES加密。
以上就是對這三部分的詳細(xì)介紹,它們之間的密切關(guān)聯(lián)使得環(huán)境監(jiān)測系統(tǒng)能夠高效運(yùn)轉(zhuǎn),并最終為我們提供清新的環(huán)境。