Documentation

You are viewing the documentation for the 2.2.x release series. The latest stable release series is 2.4.x.

§その他のデータベースライブラリとの統合

Play ではあらゆる SQL データベースアクセスライブラリを利用することができますし、play.api.db.DB ヘルパーを使えば ConnectionDatasource を簡単に取得することが可能です。

§ScalaQuery との統合

JDBC データソースを必要とする JDBC アクセスレイヤーを利用する方法を説明します。例えば、ScalaQuery との連携は以下のようになります。

import play.api.db._
import play.api.Play.current

import org.scalaquery.ql._
import org.scalaquery.ql.TypeMapper._
import org.scalaquery.ql.extended.{ExtendedTable => Table}

import org.scalaquery.ql.extended.H2Driver.Implicit._ 

import org.scalaquery.session._

object Task extends Table[(Long, String, Date, Boolean)]("tasks") {
    
  lazy val database = Database.forDataSource(DB.getDataSource())
  
  def id = column[Long]("id", O PrimaryKey, O AutoInc)
  def name = column[String]("name", O NotNull)
  def dueDate = column[Date]("due_date")
  def done = column[Boolean]("done")
  def * = id ~ name ~ dueDate ~ done
  
  def findAll = database.withSession { implicit db:Session =>
      (for(t <- this) yield t.id ~ t.name).list
  }
  
}

§JNDI 経由でデータソースを提供する

いくつかのライブラリは Datasource を JNDI 経由で取得します。conf/application.conf に設定を追加することで Play が管理するデータソースを JNDI 経由で提供することができるでしょう。

db.default.driver=org.h2.Driver
db.default.url="jdbc:h2:mem:play"
db.default.jndiName=DefaultDS

次ページ: キャッシュ


このドキュメントの翻訳は Play チームによってメンテナンスされているものではありません。 間違いを見つけた場合、このページのソースコードを ここ で確認することができます。 ドキュメントガイドライン を読んで、お気軽にプルリクエストを送ってください。