1. gzyueqian
      13352868059

      基于J2ME的嵌入式移動(dòng)數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)設(shè)計(jì)

      更新時(shí)間: 2009-07-03 18:35:40來(lái)源: 粵嵌教育瀏覽量:1052

        嵌入式移動(dòng)數(shù)據(jù)庫(kù)是一個(gè)具有廣闊應(yīng)用前景的技術(shù),具有嵌入式系統(tǒng)和移動(dòng)計(jì)算的特點(diǎn)。闡述了通過(guò)J2ME設(shè)計(jì)應(yīng)用于RDGSM的嵌入式移動(dòng)數(shù)據(jù)庫(kù)系統(tǒng)。對(duì)嵌入式移動(dòng)數(shù)據(jù)庫(kù)系統(tǒng)的數(shù)據(jù)庫(kù)連接池,數(shù)據(jù)傳輸同步控制機(jī)制以及MVC設(shè)計(jì)模式等進(jìn)行了論述。

           1. 引言

            隨著移動(dòng)設(shè)備的普及和移動(dòng)通信技術(shù)的進(jìn)步,人們對(duì)移動(dòng)數(shù)據(jù)處理和管理需求的不斷提高。與各種無(wú)線設(shè)備緊密結(jié)合的移動(dòng)數(shù)據(jù)庫(kù)技術(shù)已經(jīng)得到了廣泛應(yīng)用。嵌入式移動(dòng)數(shù)據(jù)庫(kù)因其具有任何時(shí)間,任何地點(diǎn)的自由訪問(wèn)等特點(diǎn),因而隨著移動(dòng)終端的普及,嵌入式移動(dòng)數(shù)據(jù)庫(kù)應(yīng)用逐漸成為數(shù)據(jù)庫(kù)應(yīng)用的一個(gè)主要應(yīng)用方向。因此本文在基于B/S結(jié)構(gòu)的應(yīng)用系統(tǒng)的基礎(chǔ)上,采用J2ME設(shè)計(jì)開(kāi)發(fā)了一種應(yīng)用于RDGSM的嵌入式移動(dòng)數(shù)據(jù)庫(kù)系統(tǒng)。

             2.基于J2ME的嵌入式移動(dòng)數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)

             2.1總體設(shè)計(jì)

             在嵌入式移動(dòng)數(shù)據(jù)庫(kù)應(yīng)用中J2ME(Java 2 平臺(tái)微型版)是支持智能移動(dòng)客戶端的完美平臺(tái),整合了移動(dòng)關(guān)系數(shù)據(jù)庫(kù)的J2ME客戶端能夠管理在設(shè)備上的復(fù)雜數(shù)據(jù)并能在需要時(shí)和后臺(tái)服務(wù)器同步。而J2EE(Java 2 平臺(tái)企業(yè)版版)以其可擴(kuò)展性,靈活性已經(jīng)成為服務(wù)端事實(shí)上的開(kāi)發(fā)標(biāo)準(zhǔn)。J2ME與J2EE的結(jié)合使建設(shè)一個(gè)無(wú)線接入網(wǎng)絡(luò)成為可能,任何時(shí)間,任何地點(diǎn)的自由訪問(wèn)不僅方便了用戶的自由使用,提高客戶服務(wù)水平,而且降低了運(yùn)行成本。圖1為J2ME與J2EE結(jié)合實(shí)現(xiàn)移動(dòng)數(shù)據(jù)應(yīng)用的原理圖,J2ME手機(jī)客戶端通過(guò)無(wú)線網(wǎng)絡(luò)發(fā)送請(qǐng)求,J2EE服務(wù)器根據(jù)請(qǐng)求類型從數(shù)據(jù)庫(kù)提取信息,并返回到J2ME客戶端,用戶就像隨身帶著一個(gè)數(shù)據(jù)庫(kù)一樣。

      圖1:嵌入式移動(dòng)數(shù)據(jù)通信原理圖

              客戶端通過(guò)J2ME的Midlet程序訪問(wèn)網(wǎng)絡(luò),向服務(wù)器發(fā)送服務(wù)請(qǐng)求,服務(wù)器接收到請(qǐng)求以后,則通過(guò)相關(guān)的servlet程序?qū)?shù)據(jù)庫(kù)作出相應(yīng)的查詢和操作(如插入和刪除記錄),并且返回相關(guān)信息到手機(jī)客戶端。在客戶端設(shè)計(jì)中,需要解決的關(guān)鍵主要包括網(wǎng)絡(luò)連接和信息的安全。

             J2EE為企業(yè)開(kāi)發(fā)提供了豐富的技術(shù)組件。EJB(Enterprise Java Bean)封裝業(yè)務(wù)邏輯,并將它們應(yīng)用于后端的企業(yè)信息系統(tǒng),JSP,Servlet提供Web層與用戶的信息交流,協(xié)調(diào)用戶和EJB之間的交互。這些組件相互關(guān)聯(lián)構(gòu)成了服務(wù)端J2EE的應(yīng)用。在設(shè)計(jì)中要解決的關(guān)鍵問(wèn)題有數(shù)據(jù)庫(kù)連接池和數(shù)據(jù)同步。

              HTTP協(xié)議在MIDP框架和J2EE平臺(tái)搭建了傳輸?shù)臉蛄骸ervlet通過(guò)HTTP建立起與客戶端基于主求與回應(yīng)的動(dòng)態(tài)模式。MIDP支持HTTP1.1,使用GET和POST與網(wǎng)絡(luò)層進(jìn)行通信,產(chǎn)生HTTP報(bào)頭和數(shù)據(jù)。為了使報(bào)文清晰,在HTTP請(qǐng)求是應(yīng)包含content-type屬性,某些網(wǎng)關(guān)不接收未定義或非標(biāo)準(zhǔn)content-type的報(bào)文。無(wú)線傳輸?shù)拇罅繒r(shí)間耗時(shí)在連接的建立過(guò)程中,所以客戶端設(shè)計(jì)應(yīng)避免頻繁的發(fā)送消息,將需要發(fā)送的消息積累起來(lái),減少發(fā)送的次數(shù)將極大提高客戶端的運(yùn)行效率。JAVA提供了許多內(nèi)置的聯(lián)網(wǎng)功能,使開(kāi)發(fā)基于互聯(lián)網(wǎng)和Web的應(yīng)用程序變得容易,JAVA可以指定多線程的并行執(zhí)行,可以使程序在全球范圍摸索信息,還可以與計(jì)算機(jī)上運(yùn)行的程序相互協(xié)作。J2ME將移動(dòng)設(shè)備上的客戶應(yīng)用與后臺(tái)服務(wù)環(huán)境完美結(jié)合起來(lái),基于J2ME+J2EE的移動(dòng)數(shù)據(jù)解決方案將JAVA技術(shù)的可移植性,可擴(kuò)展性,易于編程充分體現(xiàn)在移動(dòng)數(shù)據(jù)庫(kù)的的應(yīng)用中。

             2.3 數(shù)據(jù)庫(kù)連接池

             在多用戶數(shù)據(jù)庫(kù)情況下,用戶創(chuàng)建一個(gè)新的數(shù)據(jù)庫(kù)連接所消耗的時(shí)間主要取決于網(wǎng)絡(luò)的速度以及應(yīng)用程序和數(shù)據(jù)庫(kù)服務(wù)器的網(wǎng)絡(luò)距離,而且這個(gè)過(guò)程通常是一個(gè)很消耗時(shí)間的過(guò)程。采用數(shù)據(jù)庫(kù)連接池技術(shù)連接數(shù)據(jù)庫(kù)可以顯著的改善接入數(shù)據(jù)庫(kù)的速度和訪問(wèn)質(zhì)量。

              2.4 傳輸數(shù)據(jù)序列化

             客戶端與服務(wù)器需要交互的信息很多,但是通過(guò)HTTP方式與服務(wù)器進(jìn)行網(wǎng)絡(luò)傳輸,只能傳輸?shù)囟M(jìn)制數(shù)據(jù)。所以需要把二進(jìn)制數(shù)據(jù)序列化。數(shù)據(jù)序列化就是將對(duì)象狀態(tài)轉(zhuǎn)換為可保持或傳輸?shù)母袷降倪^(guò)程。與序列化相對(duì)的是反序列化,它將流轉(zhuǎn)換為對(duì)象。這兩個(gè)過(guò)程結(jié)合起來(lái),就使得數(shù)據(jù)能夠被輕松地存儲(chǔ)和傳輸。既然移動(dòng)數(shù)據(jù)系統(tǒng)要客戶端與服務(wù)器端交換不同類型和格式的數(shù)據(jù),所以把這些信息按照集合劃分,編寫成為序列化格式的類,這樣可以避免數(shù)據(jù)同步傳輸時(shí)客戶端和服務(wù)器端處理數(shù)據(jù)的時(shí)候格式不統(tǒng)一而帶來(lái)的問(wèn)題。本系統(tǒng)共有3個(gè)類分別序列化項(xiàng)目信息,采樣信息,用戶信息等。

             2.5 數(shù)據(jù)同步

             移動(dòng)數(shù)據(jù)庫(kù)也屬于分布式數(shù)據(jù)庫(kù),為保證其數(shù)據(jù)一致性,RDGSM移動(dòng)數(shù)據(jù)庫(kù)也需要進(jìn)行數(shù)據(jù)同步,這里使用的是SQL Server Mobile 復(fù)制。SQL Server Mobile 復(fù)制基于 Microsoft SQL Server 合并復(fù)制。使用 Microsoft SQL Server 2000 數(shù)據(jù)庫(kù)來(lái)實(shí)現(xiàn)合并復(fù)制。合并復(fù)制非常適合移動(dòng)應(yīng)用程序,因?yàn)樗试S分別在便攜式設(shè)備和服務(wù)器上自行更新數(shù)據(jù)。之后可以對(duì)該設(shè)備和服務(wù)器上的數(shù)據(jù)進(jìn)行同步,以將客戶端的更改發(fā)送到服務(wù)器,或從服務(wù)器接收新的更改。

             3. 基于J2ME的嵌入式移動(dòng)數(shù)據(jù)庫(kù)系統(tǒng)在RDGSM上的應(yīng)用

             RDGSM(the Regional Database for Geothermal Surface Manifestation)是國(guó)際原子能機(jī)構(gòu)的一個(gè)區(qū)域性分布式數(shù)據(jù)庫(kù)系統(tǒng),用于對(duì)亞太地區(qū)的地?zé)釘?shù)據(jù)信息(包括項(xiàng)目信息、樣本信息以及同位素和微量元素等數(shù)據(jù)信息)進(jìn)行處理和統(tǒng)一管理。RDGSM數(shù)據(jù)信息分布在亞太地區(qū)的幾個(gè)國(guó)家,是一個(gè)典型的分布式數(shù)據(jù)庫(kù)系統(tǒng),根據(jù)系統(tǒng)需求,先后完成了基于C/S結(jié)構(gòu)和B/S結(jié)構(gòu)的應(yīng)用系統(tǒng)的開(kāi)發(fā)工作,并作為國(guó)際原子能機(jī)構(gòu)HOHIS數(shù)據(jù)庫(kù)亞太地區(qū)的中心數(shù)據(jù)庫(kù)成功運(yùn)行。

             RDGSM數(shù)據(jù)庫(kù)用來(lái)處理項(xiàng)目信息、樣本信息以及同位素和微量元素等數(shù)據(jù)信息。RDGSM數(shù)據(jù)庫(kù)是基于關(guān)系模型的數(shù)據(jù)庫(kù)系統(tǒng),通過(guò)表來(lái)存儲(chǔ)數(shù)據(jù)信息。根據(jù)需求,整個(gè)數(shù)據(jù)庫(kù)由七個(gè)表構(gòu)成,分別存放不同的數(shù)據(jù)信息。表1對(duì)八個(gè)表的作用進(jìn)行了描述。

      免費(fèi)預(yù)約試聽(tīng)課

      亚洲另类欧美综合久久图片区_亚洲中文字幕日产无码2020_欧美日本一区二区三区桃色视频_亚洲AⅤ天堂一区二区三区

      
      

      1. 日韩久久精品五月综合 | 亚洲精品国产综合精品99 | 日本精品中文字幕二区不卡 | 亚洲男人的天堂色偷免费 | 日韩欧美福利视频一区二区三区四区 | 亚洲中文字幕精品四区 |