2012年10月1日

Play Framework 實作教學 (4) - 使用資料庫 ( 以 H2 資料庫為例 ) ( Use H2 database )

這次要來介紹 Play Framework 如何與資料庫作連結,Play Framework 本身有提供了一個精巧的資料庫 ( H2 Database Engine ),所以就以使用 H2 資料庫來作本篇教學範例,關於 H2 Database Engine 更詳細的資訊可以參考官方網站



我們要在 Play Framework 使用 H2 Database Engine 非常簡單,可以到 application.conf 裡面找到 Database Configuration,


可以看到 db.default.driver 已經預設為 org.h2.Driver ,
db.default.url 這邊的設定可以根據 H2 Database Engine 提供的模組來使用,
H2 Database Engine 可以有 :

1. 內嵌模式 : 
    資料庫內嵌於你的 Application 中,應用程式啟動時 H2 Database 也跟者啟動,
    這也是最簡單也最直接的連接模式,設定方式如下 :
     db.default.url="jdbc:h2:file:D:/PlayProject/PlayApp/data/PlayData" 
    這是直接讀取絕對路徑底下的名稱為 PlayData 資料庫檔案。

2. 記憶體模式 :
    記憶體模式如字面上意義,資料會讀取至記憶體。因此比較適合於靜態不需要資料存取
    或者是暫時測試、展示的情況下使用,設定方式如下 :
    db.default.url="jdbc:h2:mem:PlayData" 

3. 伺服器模式 :
    伺服器模式與 Application 是分開啟動與操作的,因為伺服器模式也提供其他 Application
    連線,所以你若停止 Play Framwork Application 之後你會發現 H2 Database Engine 仍然
    會持續提供服務,設定方式如下:
    db.default.url="jdbc:h2:tcp://localhost//PlayData" 

接下來我們以內嵌模式為範例設定我們的 application.conf 檔案,


當設定好之後,H2 Database Engine 啟動後會自動幫你建立 PlayData.h2.db 檔案,
若想要進入 H2 Console 可以在 Play 的 Console 輸入 h2-browser ,
你可以看到 H2 Console 所在 URL,輸入之後便可以看到登入畫面 ( 此範例並未設定帳號密碼 )


點選 Connect 進入 H2 Database Engine 操作介面,可以看到是蠻常見的操作介面配置方式,


以上只針對 H2 Database Engine 的設定,當然你也可以使用其他的資料庫引擎,
而設定的方式大致相同,針對 H2 連線設定可以參考這裡
之後會介紹如合使用 Ebean 與如何讓 Play Framework 自動根據 Ebean 幫你建立 Table 。其他 Play Framework 相關教學可以參考本篇整理


熱門文章