¿Cómo usar Anorm fuera de Play?

¿Cómo se usa Anorm fuera del juego en Scala? En el documento de Anorm para jugar, simplemente usa algo como:

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

losDB El objeto es solo para jugar. ¿Cómo se usa Anorm solo sin usar Play?

 Bob Dalgleish30 ago. 2014 15:58
losc que está suministrando es el objeto de conexión de base de datos, que es unjava.sql.Connection. Puede proporcionar una conexión real y proporcionarla como implícita.

Respuestas a la pregunta(2)

he intentado)

 object DB {
    def withConnection[A](block: Connection => A): A = {
      val connection: Connection = ConnectionPool.borrow()

      try {
        block(connection)
      } finally {
        connection.close()
      }
    }
  }

Tomado dehttps://github.com/TimothyKlim/anorm-without-play/blob/master/src/main/scala/Main.scala

Solución de preguntas

No hay necesidad deDB objeto (parte de Play JDBC no Anorm). Anorm funciona siempre que le proporcione una conexión implícita:

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

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

Puede resolver la conexión JDBC de muchas maneras: básicaDriverManager.getConnection, JNDI, ...

En cuanto a la dependencia, es fácil agregarlo en SBT:¿Cómo declarar la dependencia de Play's Anorm para una aplicación independiente? .

 cchantep01 ago. 2018 14:51
Tenga en cuenta que ahora Anorm es completamente independiente, incluida su documentación:playframework.github.io/anorm

Su respuesta a la pregunta