Play Scala: Как получить доступ к нескольким базам данных с помощью anorm и Magic [T] - PullRequest
5 голосов
/ 06 декабря 2011

Я хочу получить доступ к двум базам данных в Play Scala с помощью anorm и Magic [T], (одна - H2, а другая - PostgreSQL). Я просто не знаю, как это настроить ...

Я заметил, что мы можем установить другое соединение с базой данных в conf / application.conf

db_other.url=jdbc:mysql://localhost/test
db_other.driver=com.mysql.jdbc.Driver
db_other.user=root
db_other.pass=

Однако, как я могу использовать его с магией? (Я читаю исходный код Magic, но не понимаю его ... я новичок в Scala)

В любом случае, если с помощью Magic [T] невозможен множественный доступ к базе данных, я хочу сделать это с помощью anorm, тогда как я могу настроить это?

var sqlQuery = SQL(          //I guess some config params should be set here, but how?
    """
      select * from Country
    """
)

1 Ответ

2 голосов
/ 02 апреля 2012

В play.api.db.DB кажется, что вы можете передать строку с именем, которое вы определили в application.conf.

Затем использовать один из методов, указанных здесь: http://www.playframework.org/documentation/2.0/ScalaDatabase

# play.api.db.DB.class

def withConnection[A](name : scala.Predef.String)(block : scala.Function1[java.sql.Connection, A])(implicit app : play.api.Application) : A = { /* compiled code */ }
...