你如何在斯卡拉玩遊戲之外使用Anorm?在玩Anorm文件中,它只是使用類似於:如何在Play之外使用Anorm?
DB.withConnection { implicit c =>
val result: Boolean = SQL("Select 1").execute()
}
DB
對象僅用於播放。如何在不使用Play的情況下單獨使用Anorm?
你如何在斯卡拉玩遊戲之外使用Anorm?在玩Anorm文件中,它只是使用類似於:如何在Play之外使用Anorm?
DB.withConnection { implicit c =>
val result: Boolean = SQL("Select 1").execute()
}
DB
對象僅用於播放。如何在不使用Play的情況下單獨使用Anorm?
不需要DB
對象(Play JDBC不是Anorm的一部分)。 ANORM工作沿着你提供這方面的暗示:
implicit val con: java.sql.Connection = ??? // whatever you want to resolve connection
SQL"SELECT * FROM Table".as(...)
可以解決多路JDBC連接:基本DriverManager.getConnection
,JNDI,...
至於相關性,可以很容易地添加進來SBT:How to declare dependency on Play's Anorm for a standalone application?。
你也可以效仿DB對象如下(我沒有試過雖然)
object DB {
def withConnection[A](block: Connection => A): A = {
val connection: Connection = ConnectionPool.borrow()
try {
block(connection)
} finally {
connection.close()
}
}
}
從https://github.com/TimothyKlim/anorm-without-play/blob/master/src/main/scala/Main.scala
的'C'您提供兩者是數據庫連接對象,是一個'java.sql.Connection'。您可以提供真正的連接並將其作爲隱式提供。 – 2014-08-30 13:58:13