陳慧嘉,李 晶,孫 悅
(佳木斯大學(xué) 信息電子技術(shù)學(xué)院,黑龍江 佳木斯 154007)
我國(guó)是農(nóng)業(yè)大國(guó),農(nóng)業(yè)是安定民心的一種戰(zhàn)略型產(chǎn)業(yè),也是大多數(shù)農(nóng)民的主要收入來(lái)源。并且農(nóng)業(yè)一直以來(lái)都是國(guó)民經(jīng)濟(jì)的重要組成部分,因此,農(nóng)村信息化就成為了發(fā)展農(nóng)業(yè)經(jīng)濟(jì)的必由之路。近年來(lái),隨著社會(huì)各界的支持配合,我國(guó)的農(nóng)村信息化平臺(tái)建設(shè)已經(jīng)有了顯著進(jìn)展,隨著信息技術(shù)在農(nóng)業(yè)生產(chǎn)中逐漸深入的應(yīng)用,使得農(nóng)村信息化服務(wù)的水平得到了顯著的提升。盡管是這樣,通過(guò)我們所選取的研究鄉(xiāng)鎮(zhèn)來(lái)看,農(nóng)村信息化建設(shè)仍然存在許多問(wèn)題:第一,農(nóng)業(yè)信息沒(méi)有得到有效地整合,信息比較分散,缺乏針對(duì)性。第二,農(nóng)民對(duì)信息化的意識(shí)比較淺薄,信息的流動(dòng)性較差。第三,農(nóng)民對(duì)電腦較為生疏,可操作性較低?;谑謾C(jī)端開(kāi)發(fā)的農(nóng)村信息服務(wù)系統(tǒng)一方面對(duì)農(nóng)村的基本信息可執(zhí)行管理功能,提高信息整合度以及對(duì)信息管理的效率;從另一方面講也做到了對(duì)外宣傳,使更多的人了解農(nóng)村并對(duì)農(nóng)產(chǎn)品提供了銷路。
本管理系統(tǒng)的開(kāi)發(fā)采用的是B/S結(jié)構(gòu),為了可以開(kāi)發(fā)移植性強(qiáng)、可伸縮的應(yīng)用服務(wù)管理系統(tǒng),本系統(tǒng)以Java EE為主體框架,使用了Servlet和JSP技術(shù),運(yùn)用了當(dāng)今比較流行的MVC架構(gòu)?;贘SP構(gòu)架的Web應(yīng)用程序可謂是MVC設(shè)計(jì)模式的實(shí)現(xiàn)方法。后臺(tái)對(duì)數(shù)據(jù)的處理則使用了SQL Server數(shù)據(jù)庫(kù),使用JDBC完成對(duì)數(shù)據(jù)庫(kù)的連接,應(yīng)用了Java語(yǔ)言去開(kāi)發(fā)農(nóng)村信息化服務(wù)管理系統(tǒng)。
本文中所開(kāi)發(fā)的系統(tǒng)為農(nóng)村信息的管理提供了較為便捷的平臺(tái),為農(nóng)民提供了較為方便的窗口去查詢相應(yīng)的信息,實(shí)現(xiàn)了無(wú)紙化操作作業(yè),減少了人力物力的消耗,本系統(tǒng)中特產(chǎn)的銷售較好地解決了農(nóng)民銷售難、銷路少的缺點(diǎn)。農(nóng)村信息化服務(wù)管理系統(tǒng)更好的為農(nóng)村用戶進(jìn)行了服務(wù),該系統(tǒng)具備用戶的戶籍管理、賬務(wù)管理以及有關(guān)文件的上傳下載等最基本的功能;同時(shí)還具備了農(nóng)村基本信息的介紹、當(dāng)?shù)靥禺a(chǎn)的銷售以及當(dāng)?shù)乜捎斡[景點(diǎn)的管理;因?yàn)榱粞允谴鍍?nèi)村外相互溝通聯(lián)系的橋梁,所以該平臺(tái)還設(shè)置了論壇功能。
當(dāng)?shù)氐墓芾韱T登錄農(nóng)村信息化服務(wù)管理系統(tǒng)后可以實(shí)現(xiàn)的主要功能包括:戶籍信息以及個(gè)人信息的修改與維護(hù),當(dāng)?shù)赝撂禺a(chǎn)的信息添加,當(dāng)?shù)芈糜尉包c(diǎn)的相應(yīng)圖片的上傳,上傳與當(dāng)?shù)鼐用裼嘘P(guān)系的國(guó)家相應(yīng)政策文件以及當(dāng)?shù)刭~務(wù)的管理;也可以管理論壇的留言板以及查看當(dāng)?shù)靥禺a(chǎn)的銷售情況。用戶要查看農(nóng)村的相關(guān)信息則需要去安裝單獨(dú)的手機(jī)客戶端,注冊(cè)登錄后方可以使用。用戶可以查看當(dāng)?shù)氐暮?jiǎn)介、天氣、景點(diǎn)、進(jìn)入論壇進(jìn)行留言并且可以購(gòu)買當(dāng)?shù)氐耐撂禺a(chǎn)。
農(nóng)村信息化服務(wù)管理系統(tǒng)充分地整合了已有的農(nóng)村信息資源,聯(lián)系當(dāng)前農(nóng)村的實(shí)際情況,這里著重考慮了使用者對(duì)實(shí)際信息使用的需求,綜合現(xiàn)行綜合性農(nóng)村信息化服務(wù)管理系統(tǒng)的經(jīng)驗(yàn),向農(nóng)民提供多功能的綜合性服務(wù)系統(tǒng)。本信息化服務(wù)系統(tǒng)主要分為九大模塊:注冊(cè)登錄模塊、戶籍信息模塊、個(gè)人信息模塊、財(cái)務(wù)管理模塊、資源管理模塊、黨政管理模塊、留言管理模塊、鄉(xiāng)鎮(zhèn)簡(jiǎn)介模塊、土特產(chǎn)品模塊。系統(tǒng)的總體功能模塊圖如圖1所示。
圖1 總體功能模塊圖
農(nóng)村信息化服務(wù)管理系統(tǒng)的開(kāi)發(fā)是以Java EE的現(xiàn)行技術(shù)為核心,設(shè)計(jì)并實(shí)現(xiàn)了可以跨平臺(tái)、相對(duì)安全、技術(shù)成熟、耦合性低的多功能綜合性服務(wù)系統(tǒng)。以Java為開(kāi)發(fā)語(yǔ)言,利用JSP打造出B/S結(jié)構(gòu)的客戶端應(yīng)用平臺(tái)。采用了Servlet技術(shù),后臺(tái)用SQL Sever2012來(lái)管理數(shù)據(jù),并且使用了JDBC的數(shù)據(jù)庫(kù)連接技術(shù)。開(kāi)發(fā)環(huán)境使用了Eclipse4.2.0。因?yàn)樵撓到y(tǒng)采用的是Java EE技術(shù),故系統(tǒng)的可移植性較高,并且對(duì)運(yùn)行環(huán)境的要求也比較低。
2.2.1 JDBC數(shù)據(jù)庫(kù)連接技術(shù)
JDBC是一種底層的 API,可以直接調(diào)用SQL語(yǔ)句,同時(shí)它也是構(gòu)造高層API和數(shù)據(jù)庫(kù)開(kāi)發(fā)工具的基礎(chǔ)。它能夠完成三件事,分別是:與數(shù)據(jù)庫(kù)建立連接;向數(shù)據(jù)庫(kù)發(fā)送SQL語(yǔ)句;建立數(shù)據(jù)庫(kù)并返還結(jié)果。它為多種數(shù)據(jù)庫(kù)提供了統(tǒng)一的訪問(wèn),它是由Java語(yǔ)言編寫的類和接口組成。JDBC為數(shù)據(jù)庫(kù)開(kāi)發(fā)人員提供了一個(gè)標(biāo)準(zhǔn)的API,用此來(lái)構(gòu)建更加高級(jí)的工具以及接口,使開(kāi)發(fā)人員可以非常容易地用純Java API來(lái)編寫應(yīng)用程序,編寫出來(lái)的程序還可以跨平臺(tái)運(yùn)行。JDBC包含兩部分與數(shù)據(jù)庫(kù)獨(dú)立的API:面向程序開(kāi)發(fā)人員的JDBC API和面向底層的JDBC Driver API。
1) java.sql.DriverManager:處理驅(qū)動(dòng)的調(diào)入并且對(duì)產(chǎn)生新的數(shù)據(jù)庫(kù)連接提供支持;
2) java.sql.Connection:代表對(duì)特定數(shù)據(jù)庫(kù)的連接;
3) java.sql.Statement:代表一個(gè)特定的容器,來(lái)對(duì)一個(gè)特定的數(shù)據(jù)庫(kù)執(zhí)行SQL語(yǔ)句;
4) java.sql.ResultSet:控制對(duì)一個(gè)特定語(yǔ)句的行數(shù)據(jù)的存取。
2.2.2 用戶定位功能實(shí)現(xiàn)
進(jìn)入首頁(yè)時(shí)會(huì)先判斷該用戶所在位置,定位功能采用地圖瀏覽器定位的方法。首先實(shí)例化地圖,其次設(shè)置中心點(diǎn),然后利用 Geolocation.get Current Position() 函數(shù)來(lái)獲取地理位置,并且判斷當(dāng)前所獲取的地理位置狀態(tài)是否是 BMAP_STATUS_SUCCESS,是則定位成功,否便定位失敗。然后用BMap.Marker 實(shí)現(xiàn)定位標(biāo)記物的添加,BMAP_ANIMATION_BOUNCE 實(shí)現(xiàn)跳躍的動(dòng)畫效果。最后將定位好的經(jīng)緯度坐標(biāo)傳到 Local Storge變量中,以便于其他頁(yè)面使用。
2.2.3 Servlet技術(shù)
Servlet是獨(dú)立于平臺(tái)和協(xié)議的服務(wù)器端的java應(yīng)用程序,處理請(qǐng)求的信息并將其發(fā)送到客戶端。它的客戶端可以提出請(qǐng)求并動(dòng)態(tài)獲得響應(yīng)。Servlet動(dòng)態(tài)生成web頁(yè)面,擔(dān)當(dāng)瀏覽器或其他客戶端發(fā)出的請(qǐng)求與HTTP服務(wù)器上的數(shù)據(jù)庫(kù)或應(yīng)用程序之間的中間層。它具有可移植性、高執(zhí)行效率并且使用方便。
在每個(gè)Servlet實(shí)例的生命中有三種類型事件,這三種事件分別對(duì)應(yīng)于由Servlet引擎所喚醒的三個(gè)方法。
1) init(),當(dāng)Servlet第一次被裝載時(shí),Servlet引擎調(diào)用這個(gè)Servlet的init()方法,只調(diào)用一次。如果某個(gè)Servlet需要特殊的初始化需要,那么Servlet編寫人員可以重寫該方法來(lái)執(zhí)行初始化任務(wù)。這是個(gè)可選的方法。如果某個(gè)Servlet不需要初始化,那么默認(rèn)情況下將調(diào)用它的父類的init方法。系統(tǒng)保證,在init方法完成前,是不會(huì)調(diào)用Servlet去處理任何請(qǐng)求的。
2) service(),這是Servlet最重要的方法,是真正處理請(qǐng)求的地方。對(duì)于每個(gè)請(qǐng)求,Servlet引擎將調(diào)用Servlet的service方法,并把Servlet請(qǐng)求對(duì)象和Servlet響應(yīng)對(duì)象作為參數(shù)傳遞給它。
3) destroy(),這是相對(duì)于init的可選方法,當(dāng)Servlet即將被卸載時(shí)由Servlet引擎來(lái)調(diào)用,這個(gè)方法用來(lái)清除并釋放在init方法中分配的資源。
2.2.4 JSF和JSP結(jié)合應(yīng)用
農(nóng)村信息化服務(wù)管理系統(tǒng)采用MVC的框架結(jié)構(gòu),而JSF和JSP的結(jié)合使用則真正地實(shí)現(xiàn)了MVC架構(gòu),因?yàn)槠浞浅_m合開(kāi)發(fā)中小型的Web系統(tǒng)。JSF是通過(guò)標(biāo)簽庫(kù)和JSP進(jìn)行集成的。標(biāo)簽庫(kù)就相當(dāng)于ASP.NET的服務(wù)端組件。JSF提供了豐富的標(biāo)簽庫(kù),通過(guò)這些標(biāo)簽庫(kù),可以生成各種客戶端模型,如HTML、WML、XML以及JavaScript等。開(kāi)發(fā)人員通過(guò)這些標(biāo)簽,就可以比較容易地建立起大規(guī)模的客戶端模型,并由這些標(biāo)簽自動(dòng)處理客戶端請(qǐng)求。
農(nóng)村信息化服務(wù)管理系統(tǒng)的建立是立足于現(xiàn)有農(nóng)村信息化的基礎(chǔ)上,以服務(wù)農(nóng)民、擴(kuò)大農(nóng)產(chǎn)品銷路為目標(biāo),運(yùn)用各種手段充分整合各方面的資源。
為了保證系統(tǒng)可以得到穩(wěn)定的運(yùn)行,手機(jī)客戶端的農(nóng)村信息化服務(wù)管理系統(tǒng)在滿足用戶需求的基礎(chǔ)上,還應(yīng)充分考慮用戶的信息安全,系統(tǒng)的兼容性以及平臺(tái)的可移植性。
該管理系統(tǒng)是以用戶的用戶名及用戶密碼為主要的身份識(shí)別參數(shù)。根據(jù)相關(guān)法律,開(kāi)發(fā)的平臺(tái)必須要保證在用戶使用過(guò)程中不能存在泄露用戶隱私的現(xiàn)象,給用戶一個(gè)安全的使用環(huán)境。
平臺(tái)的可靠性是軟件系統(tǒng)中最為基本的要求,為了保證農(nóng)村信息化服務(wù)管理系統(tǒng)得以穩(wěn)定運(yùn)行,筆者提出幾個(gè)硬性要求:1)該管理系統(tǒng)除了系統(tǒng)維修與升級(jí)之外必須能保證全天都可以使用;2)保持信息的流動(dòng)性,及時(shí)更新信息,避免造成不必要的問(wèn)題;3)當(dāng)用戶需要幫助或者提出問(wèn)題時(shí),客服應(yīng)該及時(shí)進(jìn)行處理并提供服務(wù);4)系統(tǒng)的時(shí)間應(yīng)控制在10秒以內(nèi),即便在很多用戶同時(shí)使用的時(shí)候。
系統(tǒng)的主界面及黨務(wù)管理界面如圖2、圖3所示。
圖2 用戶登錄界面 圖3 黨務(wù)信息管理界面
現(xiàn)階段農(nóng)村的信息化服務(wù)平臺(tái)建設(shè)正進(jìn)行得如火如荼,如何能較好地整合現(xiàn)有信息,為農(nóng)村解決信息化建設(shè)中遇到的資源匱乏、混亂等問(wèn)題成為了當(dāng)前亟待解決的問(wèn)題。而農(nóng)村信息化服務(wù)管理系統(tǒng)能夠很好地將信息擬合,并為農(nóng)產(chǎn)品提供銷路,有利于加速農(nóng)業(yè)信息化建設(shè)。系統(tǒng)的開(kāi)發(fā)對(duì)于農(nóng)村信息化的發(fā)展有實(shí)際的參考價(jià)值和推廣應(yīng)用價(jià)值。
[1] 劉秋喜.農(nóng)村信息化服務(wù)平臺(tái)建設(shè)的構(gòu)想[J].信息與電腦,2016(15):64-65.
[2] 鄭建華,朱蓉,邱振國(guó).基于Servlet的MVC控制器框架設(shè)計(jì)[J].計(jì)算機(jī)時(shí)代,2015(4):43-46.
[3] 楊海明.農(nóng)村信息化對(duì)農(nóng)業(yè)經(jīng)濟(jì)增長(zhǎng)的影響[J].農(nóng)業(yè)開(kāi)發(fā)與裝備,2017(8):20.
[4] 高昂,魏惠茹,李曉東.JDBC數(shù)據(jù)庫(kù)訪問(wèn)技術(shù)探究[J].信息與電腦,2015(13):93-94.
[5] 陳濤,黃艷峰.Java Web開(kāi)發(fā)中文件上傳方法研究與實(shí)現(xiàn)[J].電腦知識(shí)與技術(shù),2016(11):48-49,52.
[6] 李國(guó)英.大互聯(lián)網(wǎng)背景下農(nóng)業(yè)信息化發(fā)展空間及趨勢(shì)——借鑒美國(guó)的經(jīng)驗(yàn)[J].世界農(nóng)業(yè),2015(10):15-20.
[7] 史夢(mèng)安,馬壯.一種基于Servlet的控制層軟件框架設(shè)計(jì)[J].軟件導(dǎo)刊,2017(3):83-85.