2009年5月11日 星期一

在Android上使用資料庫 - db4o

雖然目前在台上市的第一支Android手機:HTC Magic,價錢一整個很Magic(二萬塊誰買啊,中華電信你去吃屎啦),不過後續還會有其它廠商會出,所以我們還是繼續努力的學Android程式設計吧。








在Android平台上,如果要使用資料庫,一般都是用SQLite。不過使用SQLite,要寫的程式碼很多,就我之前看的範例,讓人很沒有動力去學。幸好我前陣子在網路上看到一個不錯的Library(聽說這個要翻作圖書館是吧XD),那就是db4o。db40有支援Java跟.NET平台,當然也支援了Android。接下來就示範用db4o寫一個簡單的通訊錄(以Eclipse為開發工具)。

首先開一個新專案,名稱:Db4oAndroid。

2009-05-11_0217022009-05-11_021942

 

然後新增Person類別,程式碼如下:

2009-05-11_025138

 

之後再新增Db4oHelper類別,主要是用來儲存Person instance。另外,記得將db4o-7.4.88.12908-java5.jar這個檔案加入到專案裡。

2009-05-11_025512

 

加入Db4oHelper後,在程式碼裡引用下列namespace:

2009-05-11_025722

 

這些namespace待會都會用到,現在開始增加Db4oHelper的方法,首先是建構子:

2009-05-11_030222

變數context就是應用程式的Activity,也就是宣告時,要將this給丟進去。

 

再來是db方法,用來開啟資料庫的:

2009-05-11_030927

db4oDBFullPath是用來查詢資料庫檔案的真實位置,而dbConfig則是用來產生設定檔的。

 

Configuration這個類別,可以設定的參數很多,這邊設定兩個參數。

2009-05-11_042206

第一個設定的是將index打開,說到Index,就想到十萬三千本…。至於第二個,則是讓Db4oHelper有刪除的功能。

註:我從官方網站下載的文件,對於Configuration類別的說明非常少,不知道是否有漏掉其它的文件,對於第二個參數的設定我並不是很確定。

 

之後再新增下列方法:

2009-05-11_040630

這些方法就是主要的三個功能:新增資料、查詢資料、關閉資料庫。

 

接下來打開DroidDraw,設計程式的介面,介面的樣子如下:

2009-05-11_032752

原始碼

2009-05-11_033111

 

接下來開始撰寫程式邏輯。首先在類別中宣告下列變數:

2009-05-11_035655

 

接下來是OnCreate:

2009-05-11_042343

在OnCreate裡,將介面的控制項連結到前面所宣告的變數,並且設定按鈕的click函數。而所按鈕用到的方法如下:

2009-05-11_035722

在db4o中,不管是新增還是查詢資料,程式碼都相當的少。

 

完成後,開始執行吧!執行畫面如下:

新增第一筆資料。

2009-05-11_042611

 

第二筆。

2009-05-11_042652

 

查詢剛剛輸入的sholfen。

2009-05-11_042733

 

查詢Linuxer。

2009-05-11_042757

1 則留言:

  1. 你好~我最近要學android的資料庫的應用,參考了大大的方式但我不知是因為我哪裡打算了,還是太笨了= = 一直無法顯示執行,能參考大大的完整程式碼嗎?拜託你了

    回覆刪除

 

我們搬家了

新部落格在http://b-plurkers.com/