Daniel Wu Daniel Wu - 1 month ago 23
Scala Question

How to use Anorm outside of Play?

How do you use Anorm outside of play in Scala? In the Anorm document for play, it simply uses something like:

DB.withConnection { implicit c =>
val result: Boolean = SQL("Select 1").execute()
}


The
DB
object is only for Play. How do you use Anorm alone without using Play?

Answer

There is no need of DB object (part of Play JDBC not Anorm). Anorm works as along as you provide it connection as implicit:

implicit val con: java.sql.Connection = ??? // whatever you want to resolve connection

SQL"SELECT * FROM Table".as(...)

You can resolve JDBC connection in many way: basic DriverManager.getConnection, JNDI, ...

As for dependency, it's easy to add it in SBT: How to declare dependency on Play's Anorm for a standalone application? .