在上篇文章已經談到 H2 Database Engine 的使用方法之後,接著介紹 Ebean 要如何應用在 Play Framework,對於 Ebean 的基本介紹可以參考官方網站的文件,
回想一下在實作教學第一篇架構介紹的時候,有建立名為 models 的 package ,
這時我們可以在 models package 底下建立我們想要的 Ebean 物件,
以下我建立了一個簡單的 Profile.java 內容
在 Profile.java 物件中,可以發現我加上了 @Id 與 @Constraints.Required,
@Id 即為定義此欄位為主鍵 ( Primary key ),
@Constraints.Required 定義該欄位不允許為空,
第二個部分為 Play Framework 提供的欄位驗證其中之一,
當然針對有許多更多的類似使用方法,可以在他們參考文件中找到。
定義好我們的物件後,此時我們的 H2 Database 裡面是還沒有任何表格被建立的,
因此接著就是將我們的 Ebean 轉成資料庫表格 ( Table ),
首先將 application.conf 裡面針對 Ebean Configuration 的設定打開,
設定方式為 ebean.xxx = " 你的 Ebean package 所在位置 ",
接著進入 Play Framework 的 Console 畫面將專案啟動,啟動後進入專案的畫面
( 例如 : http://localhost:9000/ ),
此時系統會偵測到你有 Ebean 物件可轉換 SQL Script 並且詢問你是否執行,
可以仔細看 SQL Script 將 Profile.java 的欄位列出,並且將 @Id 欄位建立為主鍵,另外欄位當然可以在 Ebean 中先行設定欄位長度等等。點選右上方 Apply this script now 後系統將會幫你建立資料庫表格,值得注意的是表格建立完後,可以立即 Refresh 一下專案,發現系統會幫你另外建立一個資料夾名為 evolutions ,裡面存放了剛剛使用過的 SQL Script,真的是很方便 !
目前你的 H2 資料庫裡面已經擁有一個建立好的名為 Profile 的資料表,如下圖:
如此一來整個 Play Framework 的專案建構已經大致上完成。其他 Play Framework 相關教學可以參考本篇整理。
熱門文章
-
Launchd 是設計用來管理系統中的 Process、Application 及 Script,它包含了與 Cron 相同的服務。本文章將要介紹如何透過 Launchd 管理並執行例行性任務於 Mac OS X 上。( 其他 Mac 相關教學可以參考 本篇整理 。If you...
-
之前的文章主要探討的都是一個訊息由一個 Consumer 處理,但若我們需要的是一個訊息同時傳送至所有的 Consumer 的話,我們則需要應用 Publish 與 Subscribe 模式,本篇將討論如何使用這個模式。( 其他 RabbitMQ 相關教學可以參考 本篇整理 )...
-
Jekyll 是一個很方便的網站、部落格產生器,它的功能夠簡潔就是專注在產生一個靜態網站。但也因為這樣,有一些需要動態產生的東西無法透過 Jekyll 直接實現。例如:每當使用者進入頁面,讓網頁產生隨機文章連結。所以,本篇將介紹如何利用 Jekyll 實現隨機文章的功能。( If...
-
開發 React 應用程式時,比較常遇到的問題就是 bundle.js 或其他檔案太大,導致頁面載入時間過長。但透過 Webpack 與一些優化技巧可以大幅減少整個應用程式大小。因此,本篇將介紹如何利用 Webpack 減少 React 應用程式大小。( If you want ...
-
Web Service 目前已經被廣泛應用,在這邊試著解說如何以 Eclipse 來快速、簡單的建立與測試,這次範例以提供產生樂透號碼,本篇我們先建立服務提供端。( 另外,Web Service Client 端建立教學,請參考 本篇 )





