2012-05-30 111 views
6

要訪問數據庫,必須在conf文件中指定數據庫詳細信息。有條件地連接到數據庫

如果數據庫運行正常,一切正常。

如果數據庫關閉播放引發異常,我無法控制。

我想有條件地連接到數據庫。假設我只想連接到一個數據庫,如果一個標誌設置的地方。是否有更爲人工的方式連接到Play中的數據庫?

更新: 我想我不是很清楚。

我希望應用程序在數據庫關閉並從其他備用數據源獲取數據時不會失敗。我怎麼能在PLAY中完成這個?

+0

你說的更多的手工方式是什麼意思?如果你願意,你總是可以回退Jdbc或任何你想要的數據庫API。 –

回答

1

我假設你想在沒有數據庫的情況下開始你的應用程序開發?您可以通過在啓動時的備選配置文件,您例如在內存數據庫配置:

start -Dconfig.resource=development.conf 

編輯:

您可以在應用程序配置配置幾個數據庫,並與DB.getDataSource(name: String)讓他們或得到一個連接將它與DB.getConnection(name: String),甚至運行與DB.getConnection交易[A](名稱:字符串)(F:連接=> A)

見:http://www.playframework.org/documentation/api/2.0/scala/index.html#play.api.db.DB $

+0

我想要的是,當數據庫連接失敗時,Play會回退到備用數據源(例如緩存)。 – rahul

+0

我不認爲這是一個非常常見的用例。反過來是沒有問題的:http://www.playframework.org/documentation/2.0/ScalaCache 你應該讓你的數據庫高度可用。 – drexin

+0

So Play對數據庫連接提供很少的控制權? – rahul