首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在游戏之外使用Anorm?

如何在游戏之外使用Anorm?
EN

Stack Overflow用户
提问于 2014-08-30 13:12:26
回答 2查看 2.1K关注 0票数 9

在Scala游戏之外,你如何使用Anorm?在Anorm文档中,它只使用如下内容:

代码语言:javascript
复制
DB.withConnection { implicit c =>
  val result: Boolean = SQL("Select 1").execute()    
} 

DB对象仅用于播放。你如何单独使用Anorm而不使用Play?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-08-30 16:39:32

不需要DB对象(发挥JDBC的一部分,而不是Anorm)。Anorm的工作原理是将它作为隐式连接提供:

代码语言:javascript
复制
implicit val con: java.sql.Connection = ??? // whatever you want to resolve connection

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

您可以通过多种方式解析JDBC连接: basic DriverManager.getConnection、JNDI、.

至于依赖关系,在SBT:How to declare dependency on Play's Anorm for a standalone application?中添加它很容易。

票数 14
EN

Stack Overflow用户

发布于 2015-09-08 13:05:40

您还可以如下所示地模拟DB对象(不过,我还没有尝试过)

代码语言:javascript
复制
 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

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25582744

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档