程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> J2ME >> 選擇開發移動應用程序的數據庫

選擇開發移動應用程序的數據庫

編輯:J2ME
第一節 引言
  也許開發所有的網絡和企業應用程序項目必須做的事情就是使用關系數據庫管理系統(RDBMS)來有效的處理存儲和檢索基於表的數據的操作。RDBMS已經成了最流行的數據庫管理系統(例如Oracle 9i ,MS SQL Server和IBM DB2),而且也包括以存儲過程和觸發器的形式在數據庫內直接編碼應用程序邏輯的能力。像Oracle 9i 和Sybase Adaptive Server企業版這樣的高級數據庫甚至包括用於開發操作數據的Java存儲過程或Servlet的數據庫中運轉Java虛擬機的功能。
  這些工業應用的企業級數據庫產品都可使用通用SQL語言存取數據並使用像ODBC 或 JDBC這樣的標准化數據庫應用程序接口進行查詢。這些技術已經發展到任何it項目無論大小,離開關系數據庫就無法工作的地步。面對來自產品經理和用戶們日益高漲的把現有的應用程序“可移動化”的請求,然而令企業應用程序開發者大吃一驚的是移動平台的數據庫訪問機制還未成熟。
  像Palm OS和 Window CE 這樣的平台支持本地文件系統,用於在列表格式中存儲數據;然而,這些文件系統實際上是非常簡單的系統,不能通過SQL查詢。這使開發者不得不手工編碼每一個自定義數據存儲和檢索的解決方案。
  我還應該提到,移動平台系統的數據庫應用程序接口顯然是完全不同的,並且你還需要編寫你們自己的數據同步化代碼以確保手持設備上編輯的內容能夠返回企業數據庫中。
  第二節 移動數據庫應用程序開發技術
  默認情況下,PDA平台上的數據同步化是通過使用由開發者編寫的一個管道(conduit)處理的。當一個Palm用戶按下Sync按鈕時,管道軟件(駐留在用戶系統中的DLL或COM對象)訪問 Palm系統數據庫並檢索一個或更多指定的表。如果需要的話,這個操作可以使用一個ODBC/JDBC調用插入或更新一個企業關系數據庫,如果沒有其他的任務的話,這個操作就相當地簡單。
  Palm甚至為 Java、 COM和 C/C++開發者提供 Conduit SDK。然而,萬一萬惡的老板還讓你的應用程序能夠被 Windows CE支持並且被手提電腦支持,老天,我們該怎麼辦?這可能就產生了三個數據庫模塊(手提電腦中的 JDBC/ODBC/ADO,Palm OS上的 Palm數據庫應用程序接口以及Windows CE中的 ADOCE)以及三個同步化解決方案(從手提電腦到服務器的 TCP/IP套接字,從Palm到Conduit的HotSync以及從 WinCE設備到Conduit的 Microsoft ActiveSync )。
  別害怕,符合我們需要的移動關系數據庫已存在了!事實上,隨著版本的不斷提升,這些移動數據庫的功能正變得越來越強大。這其中有許多中數據庫系統可以使用在多個平台上,可以使用流行的程序設計語言如 C/C++、 Java和 Visual Basic,以及服務器端的數據合並和同步化。本文中,我們將探討三種流行的提供多操作平台和程序設計語言支持的數據庫產品。
   第三節 Sybase SQL Anywhere/Ultralite
  當前的移動數據庫市場的領頭羊(超過60%市場份額)是 Sybase的 SQL Anywhere 產品。這種產品的最初的版本是定位於需要同步支持服務器版本的 Sybase數據庫( 現在命名為 Adaptive Server Enterprise)的移動用戶。發展了幾年以後,這種產品已經慢慢的包括了一個微型的關系數據庫,通常稱為 Ultralite,可以在多種平台上配置並且支持許多同步化選項。雖然SQL Anywhere數據庫是一個功能強大的SQL數據庫,並且包括了安全性和高端數據庫功能比如存儲過程和觸發器,但是如果你正在多個移動平台上配置應用程序的話你可能會對Ultralite更加有興趣。現在, Ultralite可用於 Windows 95/98/NT 、 Palm OS、 Windows CE和 EPOC 。它的應用程序接口可用於 C/C++ 和 Java程式語言,並且這些應用程序接口在所有的支持的平台上保持不變。
  不象其他從台式機移植到移動設備上的關系數據庫系統那樣,Ultralite數據庫是特意為沒有硬盤的設備設計的,這意味著這個數據庫在存儲器使用上已達到最優化,即使使用最小的內存也能提供最高的性能。SQL Anywhere包含的另一個強大功能是MobiLink 同步技術。MobiLink是一個基於服務器的同步化引擎,它可以通過串行口、 TCP/IP、 HTTP 、 HotSync 、 ScoutSync或 ActiveSync連接與遠程客戶通信。使用象 MobiLink 這樣的通用同步技術可以極大地削減開發費用,因為MobiLink能夠處理高級的同步操作,比如瞬象(snapshot)和時間戳同步、主鍵維持、沖突的檢測和解決等。在服務器端,所有的MobiLink同步邏輯都是通過使用後台數據庫的SQL的事件處理的( MobiLink通過 ODBC 連接數據庫,所以事實上支持所有的SQL數據庫),通過使用 Certicom的 SSL/TLS Plus 來支持公鑰加密功能(使用橢圓曲線加密系統技術)。如果在編寫應用程序前把可能發生的時間都考慮好的話,那麼 SQL Anywhere/Ultralite 組合將是一個極強大的移動數據庫和同步解決方案可以滿足任何任務。
  第四節 Oracle 8i Lite
  雖然Sybase可能已經領引了移動計算技術市場空間,但是我們也不能否認Oracle在企業數據庫世界中的重要作用。象Sybase的相應產品一樣,Oracle 8i Lite產品可用於所有主要的移動平台(Win32、 Windows CE、 Palm OS和EPOC)並且在某些地方還超出了Sybase Ultralite。8i Lite包含完整的與後台Oracle數據庫同步的能力;然而,這種產品並不就此止步。也包括了 Windows CE和 Win32的 ODBC客戶機和 C/C++/Java/ActiveX應用程序接口支持。這種產品的另外兩個特性也許更能引起大家的興趣:Oracle Mobile Agent和Web-To-Go:
  ·Oracle Mobile Agents最初市場定位在獨立無線中間件產品,但是1999年被收錄入8i Lite產品中。Mobile Agents是一個通信解決方案,允許 Oracle 8i Lite應用程序通過網絡執行無線同步操作,這些網絡有CDPD(AT&T Wireless使用)、Mobitex(Cingular Wireless使用)和 DataTAC 4000/5000(MotIEnt使用)。Oracle Mobile Agents通過使用應用程序隊列處理信息。這個隊列也與運行Oracle高級隊列( Advanced Queuing)選項的後台Oracle數據庫和包括 8i Lite的 AQ Lite產品整合。
  · Web-To-Go既是數據同步又是一個應用程序部署解決方案。建立在通用網絡開發技術諸如∶ apache和 Java servlets, Web-To-Go允許一個網絡應用程序 (對於Win32平台 )在服務器內被存檔然後自動地、同步地配置到客戶機中。Web-To-Go通過Java存儲過程或JDBC支持數據庫邏輯的開發並且對於那些現有的使用Java servlets構建的網絡應用程序來說它是一個非常強大的移動解決方案。
  我相信市場現在對於 Oracle提供的產品多多少少覺得有點混亂,因為 8i Lite的各個部分曾經分別上市(Web-To-Go、Oracle Mobile Agents、Oracle Lite等)。另外, Oracle自己的 OracleMobile解決方案定位在只用於無線應用解決方案諸如∶ WAP、 SMS和 VoiceXML,也已經能夠從 8i Lite那裡吸引來不少目光。然而,對於那些開發工業強度的解決方案同時又需要無線通訊的人來說, 8i Lite是一個數據庫、同步化、中間件和應用程序部署技術的綜合體。
  第五節 PointBase 4.0袖珍版
  象IBM(DB2 Everywhere)與微軟(SQL Server CE)這樣的公司也開發了用於多種平台的移動數據庫系統,這些產品的能力都非常強大,使用DB2 或SQL Server數據庫工作的開發者也將很快熟悉這些數據庫產品。但除此之外,我還想介紹進軍企業級數據庫市場的一只新軍:PointBase。
  PointBase 非常獨特,因為它是第一個經過認證的100%純Java數據庫,可用於任何使用的 Java 2 標准版虛擬機(JVM)的平台。在2001年6月的JavaOne大會上,PointBase發布了PointBase 袖珍版產品——一個為 J2SE 和 J2ME 環境設計的占用資源少的(不到 45KB )數據庫。如果你的目標平台包含一個兼容J2ME的虛擬機,PointBase允許你部署一個SQL數據庫應用程序。J2ME MIDP 虛擬機目前可用於Win32,Palm OS,Windows CE和摩托羅拉IDEN電話。
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved