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

使用 DB2 Everyplace 為 Palm 設備創建移動應用程序

編輯:DB2教程

簡介

本文描述了如何用移動應用程序構建器(Mobile Application Builder,MAB)來構建無線應用程序,並和 IBM® DB2® Everyplace 一起將企業數據發送給無線設備。還可以用 MAB 來訪問和更新這些數據。

本文旨在幫助您:

理解和使用 DB2 Everyplace 的功能

配置和安裝 DB2 Everyplace

構建、部署和測試樣本 Palm 應用程序

DB2 Everyplace 概述

DB2 Everyplace 是一個設計用於個人數字助理(personal digital assistant,PDA)、手持式個人計算機、移動電話和嵌入式設備的關系數據庫。DB2 Everyplace 是 IBM 移動計算解決方案的一部分。有了 DB2 Everyplace,那些常使用移動設備的人士(譬如銷售人員)甚至在路上就可以訪問他們所需要的重要數據。

DB2 Everyplace 解決方案包含以下組件:

數據庫:為一些小設備設計的小規模的關系數據庫系統。

同步服務器:雙向同步服務器,在 DB2 Everyplace 數據庫與企業數據庫之間移動數據。

移動應用程序構建器:快速應用程序開發工具,用它來創建可在移動設備上運行的 DB2 Everyplace 應用程序。

數據庫引擎

這個關系數據庫引擎為記錄集提供持久存儲器,並能夠用 SQL 來修改和檢索記錄。可以使用下面幾種不同方式來訪問 DB2 Everyplace 數據庫中的數據:

使用命令行處理器(CLP)發出 SQL 語句。

使用用 ODBC 或 JDBC 作為調用級接口的應用程序。

同步服務器

同步服務器是一個客戶機/服務器程序,用於管理從移動 DB2 Everyplace 數據庫到源數據庫的數據同步過程。同步服務器支持從移動數據庫到源數據庫以及從源數據庫到移動數據庫的雙向數據同步。源數據庫可以是任何關系數據庫。

移動應用程序構建器

移動應用程序構建器(MAB)是一個集成工具箱,用於開發在移動設備上運行的 DB2 Everyplace 應用程序。MAB 使得在功能更強大的開發平台(Windows NT® 服務包 4 或更高版本、Windows 2000® 和 Windows XP Professional® 都支持 MAB)上編寫健壯的應用程序以部署到移動設備變得容易。接下來,這些應用程序可以運行在基於 Palm OS 的設備(對於這些設備,生成 C 語言應用程序)或者任何支持 Java™ 虛擬機的設備(生成 Java 語言應用程序)上。

本文描述了如何使用 MAB 來開發 Palm C 語言應用程序,以構建和測試我們的 Palm 應用程序。使用 DB2 Everyplace V8.1 開發我們的應用程序。在以後的文章中,我們將使應用程序與關系數據存儲同步。

V8.1 還支持 Java,後續文章 使用 DB2 Everyplace 構建無線 Java 應用程序描述了如何構建 Java 應用程序,並將其部署到支持 Java 虛擬機的移動設備上。

配置環境

本節描述了如何安裝 MAB 及其相關工具,從 http://www14.software.ibm.com/webapp/download/search.JSP?go=y&rs=gnutools 可以下載 MAB 及其相關工具。

步驟 1:安裝移動應用程序構建器

要安裝 MAB,請運行 AppBuilderENU.exe ,並接受缺省值,這會將 MAB 安裝到 <yourDirectory>\\DB2Everyplace\\ApplicationBuilder 下。

步驟 2:為 MAB 設置構建環境

MAB 使用以下所有工具,您必須安裝這些工具。只需在某個特定的工作站上安裝這些工具一次即可。

安裝 Cygwin
雙擊 Windows 資源管理器中的 c ygwin-b20.1-full.exe ,運行這個 .exe 文件。缺省的安裝目錄為 c:\\cygnus 。

安裝 GNU PRC 工具
遵循以下步驟,安裝這些 PRC 工具,這些工具包含交叉編譯器和其它實用程序。

雙擊 prc-tools2.0.exe 。

在安裝向導的 Select Components頁面上,選擇 PRC 工具的 Cand C++ Tool Chain組件。可以選擇是否安裝工具文檔和樣本程序。

在 Choose Destination Location: PRC Tools 頁面上,指定目標文件夾,或接受缺省目錄( c:\\Program Files\\PRC-Tools )。

在 Choose PalmDev Location 頁面上,指定該工具鏈的文檔和樣本程序的目標文件夾,或者接受缺省目錄( c:\\PalmDev )。無論您是否選擇安裝這些文件,安裝向導都會提示您為它們選擇一個位置。

安裝 Palm OS SDK
遵循以下步驟以安裝 Palm OS SDK,其中包含 Palm OS C 庫和頭文件。

到位於 http://www.palmos.com/dev/tools/_sdk40license.Html 上的 Palm OS SDK V4.0 主頁,然後單擊 I Agree 表示接受該許可證信息。接著會顯示 Palm 4.0 SDK 頁面。

單擊 Palm OS SDK for CodeWarrior and/or PRC-Tools這一部分中的 Windows 以下載 sdk40.zip 。

將 sdk40.zip 解壓縮至任何目錄,然後運行 Palm OS SDK 4.0 可執行文件。

在 Select Installation Type頁面上,選擇 PRC Tools 2.0。設置安裝路徑,使其與前面 Choose PalmDev Location 頁面上安裝 PRC-Tools 2.0 時指定的路徑一樣。缺省的安裝目錄為 c:\\PalmDev 。創建新目錄 sdk-4 。

安裝 PilRC 資源編譯器
將 pilrc.zip 解壓縮至 <prc-tools installation directory>\\h-i586-cygwin32\\bin (例如, C:\\Program Files\\PRC-Tools\\H-i586-cygwin32\\bin ),以安裝 PilRC 資源編譯器,它用於創建 Palm 程序資源(例如,在應用程序中使用的文本字符串)。

安裝 PALM 仿真器和 ROM 映像
遵循以下步驟以安裝 Palm 仿真器和 Palm 仿真器的 ROM 映像。

從 http://www.palmos.com/dev/tech/tools/emulator/ 下載 Palm 仿真器。您還需要為設備中所使用的 PalmOS 的級別注冊 ROM 映像,您要向這些設備注冊應用程序。

將這個壓縮文件保存到 MAB 安裝目錄(例如, c:\\DB2 Everyplace\\ApplicationBuilder\\bin )。將該文件解壓縮到這個目錄。在使用 Test 工具欄或菜單項測試應用程序時,為了使用戶界面能找到 emulator.exe 文件,該文件必須位於 MAB 的安裝目錄中。

步驟 4:安裝 Palm 仿真器以便測試

雙擊 c:\\DB2 Everyplace\\ApplicationBuilder\\bin 中的 emulator.exe 以啟動這個仿真器。

在彈出的窗口中選擇 New以啟動新的仿真器會話。在 圖 1 所示的 New Session 窗口中,選擇從 http://www.palmos.com/dev/tech/tools/emulator/ 下載的 ROM 文件的位置。單擊 OK,會看到 Palm 仿真器。
圖 1. 新的仿真器會話
使用 DB2 Everyplace 為 Palm 設備創建移動應用程序

在仿真器屏幕上任一位置上單擊鼠標右鍵,然後單擊 Install Application/Database。

選擇 Install Other以安裝數據庫引擎。

選擇以下文件:   C:\\DB2EveryPlace\\DB2e\\ClIEnts\\PalmOS\\DB2eCAT.prc 
  C:\\DB2EveryPlace\\DB2e\\ClIEnts\\PalmOS\\DB2eCLI.prc 
  C:\\DB2EveryPlace\\DB2e\\ClIEnts\\PalmOS\\DB2eComp.prc 
  C:\\DB2EveryPlace\\DB2e\\ClIEnts\\PalmOS\\DB2eRunTime.prc 
  C:\\DB2EveryPlace\\DB2e\\ClIEnts\\PalmOS\\Samples\\SampleCLP\\DB2eCLP.prc 

設置環境屬性
缺省情況下,MAB 構建器自動鏈接到 Palm 的必備工具。因為我們用所推薦的缺省文件系統路徑,並用開發工具中各自的安裝程序安裝了這些開發工具,所以現在必須告訴 MAB 這些工具的安裝位置。為此,到 File -> Preferences -> Palm Tools,然後單擊 Browse以查找這些工具的安裝位置,如 圖 2所示。


圖 2. 告訴 MAB 這些工具的安裝位置
使用 DB2 Everyplace 為 Palm 設備創建移動應用程序

現在,我們設置好 MAB 開發環境。

構建、部署和測試樣本 Palm 應用程序

現在,讓我們構建一個樣本地址簿應用程序,並將其部署到我們的 Palm 仿真器中。

單擊 Start -> Programs -> IBM DB2 Everyplace -> Mobile,啟動 MAB 環境。

選擇 Create a New Project。

將該項目命名為 SampleAddressBook 。

輸入該應用程序名 SAB 。

選擇 Palm OS作為目標設備。

選擇缺省的應用程序標識 DBA1。這個標識被注冊在應用程序標識數據庫中,它可用於測試。在准備部署應用程序時,可以改變這個應用程序標識。

單擊 Finish。


圖 3. 為樣本地址簿應用程序創建一個項目
使用 DB2 Everyplace 為 Palm 設備創建移動應用程序

圖片看不清楚?請點擊這裡查看原圖(大圖)。

裝入 SampleAddressBook 的表定義

在定義完該項目之後,可以開始定義將要在應用程序中使用的表。DB2 Everyplace MAB 有一個用於將表定義導入項目文件的選項。以後創建表單或在表單上引用其它表中的列時,可以使用這些定義。為了裝入 address.ddl 文件:

在 Tables上單擊鼠標右鍵,然後選擇 Import Table,如 圖 4所示。


圖 4. 裝入表定義
使用 DB2 Everyplace 為 Palm 設備創建移動應用程序

在 Import table definition 窗口,選擇 address.ddl,然後單擊 Open。在裝入這些表之後,會在 project tree 窗口的 table 部分顯示這些表。

構建用戶界面

在將表定義裝入 project 窗格之後,現在准備開始創建用於應用程序的表單。在 MAB 內創建表單的方式主要有兩種:

手工創建表單。

使用 Form Creation Wizard 自動地生成表的表單。

我們將使用該向導,如下所示:

在 Address 表上單擊鼠標右鍵,然後選擇 Launch Form Creation Wizard。

選擇表單中要包含的所有數據庫列,如 圖 5 所示。
圖 5. Form Creation Wizard
使用 DB2 Everyplace 為 Palm 設備創建移動應用程序

圖片看不清楚?請點擊這裡查看原圖(大圖)。

單擊 Next,將使我們能夠選擇想要與這些表單相關聯的數據庫操作。

選中所有可用的操作,如 圖 6所示,然後單擊 Finish。
圖 6. 設置可用的數據庫操作
使用 DB2 Everyplace 為 Palm 設備創建移動應用程序

圖片看不清楚?請點擊這裡查看原圖(大圖)。

現在,可以在 Forms 部分中找到 Address 表單。刪除 Form1,因為這是一個空白的缺省表單。

創建 Address 表單的事件

選擇 Address 表單,然後單擊 New,如 圖 7 所示。
圖 7. 使用 Address 表單
使用 DB2 Everyplace 為 Palm 設備創建移動應用程序

選擇 Events 選項卡,如 圖 8 所示,然後將看到一個 Tap 事件和與該 Tap 事件相關聯的 Address create record。Tap 事件相當於會生成某個操作的單擊鼠標動作。例如,在上面這個應用程序中,當單擊 New 按鈕時,會觸發與 New 按鈕相關聯的函數。這意味著,當用戶單擊 New 按鈕時,會創建一個新行。
圖 8. 創建 Tap 事件
使用 DB2 Everyplace 為 Palm 設備創建移動應用程序

單擊 Address create record,然後會出現 Event Action and Target 表單。

單擊 Create Record,選擇 Set Message,然後選擇以下通知事件( 圖 9):
圖 9. 選擇通知事件
使用 DB2 Everyplace 為 Palm 設備創建移動應用程序

創建類似的用於刪除和更新記錄的事件。

構建應用程序

在菜單中選擇 Build ->Build以構建應用程序。如果構建成功,則會看到一條消息。如果出現錯誤,請確保安裝這些工具和設置 Preferences 中的路徑時已按 設置環境屬性中所描述的那樣正確設置了配置。

當構建應用程序時,為了創建最終的 Palm 可執行文件( *.prc ),會創建許多中間文件。移動應用程序構建器要使用這些中間文件,更改它們會導致您的項目出錯。有以下中間文件:

*.prc — Palm 應用程序的可執行文件。在成功地構建完項目之後,會創建這個最終輸出。

*.bin — 應用程序中的可執行 Palm 資源。

*.c — 應用程序的源代碼。

sql*.h — 應用程序訪問 DB2 Everyplace 引擎函數所需的頭文件。

*.h — 用於生成應用程序的頭文件。

*.makefile — 用於為 Palm 構建可執行應用程序。

*.rcp — 應用程序中 Palm 資源的定義。

ibm_pab-sections.* — 與多個代碼段支持相關。

測試應用程序

在測試應用程序之前,請創建樣本地址簿。

在 Palm 仿真器中選擇 Application,然後選擇 DB2 Everyplace 所包含的 DB2e CLP。

在 Query 域中輸入以下 SQL 語句,如 圖 10所示,然後單擊 Execute。 CREATE TABLE Address (FirstName Char(30), LastName Char(30) not null primary key , 
Address char(30), 
Country char(30), 
PhoneNumber char(15)) 


圖 10. 創建樣本地址簿
使用 DB2 Everyplace 為 Palm 設備創建移動應用程序

對於這個地址簿示例,我使用 LastName作為主鍵。在以後的文章中,我將討論數據同步,其中將需要主鍵。對於您的情形,主鍵最好可能有所不同。只是要記住,如果插入新的姓名,姓必須不同於以前的姓,否則會出錯。

將樣本地址簿應用程序裝入 Palm 仿真器

在仿真器屏幕上任一位置單擊鼠標右鍵,然後單擊 Install Application.Database。

選擇 Install Other以選擇 DB2 Everyplace 引擎的路徑,然後在您的項目目錄中選擇樣本地址簿應用程序文件 PersonalAddressBook.prc。

在仿真器屏幕上任一位置單擊鼠標右鍵,然後單擊 Reset -> Soft Reset以接受您的更改。

在 Palm 仿真器上,單擊 Applications,然後選擇 SAB(在創建該項目時,給這個應用程序指定的名稱)。接著會顯示我們的應用程序,如 圖 11所示。然後,單擊 New。
圖 11. 添加新的地址
使用 DB2 Everyplace 為 Palm 設備創建移動應用程序

在單擊 New之後,會得到一條通知消息,如 圖 12 所示。
圖 12. 請求的確認
使用 DB2 Everyplace 為 Palm 設備創建移動應用程序

單擊 OK,然後會看到表示創建成功了的消息。

通過使用各種控制按鈕(Tap 事件)浏覽整個應用程序,以查看應用程序流。例如,單擊 First按鈕,可以浏覽第一條記錄。使用 Next和 Previous按鈕來浏覽記錄,另外還可以刪除和更新記錄。

結束語

使用 DB2 Everyplace,您已成功創建、部署和測試了一個樣本應用程序。現在可以將這個構建好的應用程序傳送到 Palm 設備上。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved