3

我是 cassandra 数据库的新手。我正在使用 play2.2.1 和 mySQl 数据库,但正在尝试迁移到 cassandra 数据库。我正在使用 cassandra-2.1.3。虽然我可以轻松连接到 mySQl 数据库,但它由 application.conf 文件中的以下几行给出。db.default.driver=com.mysql.jdbc.Driver db.default.url="jdbc:mysql://127.0.0.1:3306/mydatabase"

但是,我不知道cassandra 的 db.default.url 应该是什么。我已经给出了 db.default.driver=com.datastax.driver.core

编辑:我已经在我的游戏应用程序https://github.com/websudos/phantom中集成了幻像 DSL ,但该页面似乎没有说明任何有关连接到数据库的信息。

编辑:

对于所有新来者来说,正确的地方是Phantom 入门,它更详细地解释了如何连接到 Cassandra。

4

2 回答 2

6

Phantom 预先捆绑了连接器,因此您可以在完成 0 工作时连接到数据库。您只需要扩展一个连接器实现并告诉它与相关 IP 和端口一起使用哪个键空间。

要简单地连接到本地主机:

import com.websudos.phantom.connectors.SimpleCassandraConnector


trait MyConnector extends SimpleCassandraConnector {
  implicit val keySpace = KeySpace("my_app")
}

现在剩下的就是把这个特性混入你所有的表单例中,你就完成了。查看连接器模块以获取有关如何使用更高级部署甚至基于服务发现的连接器的更多信息。

更新

从 Phantom 1.9.0 开始,连接器框架经历了彻底的重写。

import com.outworkers.phantom.connectors.{ ContactPoint, ContactPoints }

object Defaults {
  val keySpace = ContactPoint.local.keySpace("myapp")
  // val Connector = ContactPoints(Seq("localhost", "10.4.2.2"), 9042)
}

trait Connector extends Defaults.keySpace.Connector {
  implicit val keySpace: KeySpace = KeySpace("my_app")
}
于 2015-04-08T00:57:57.247 回答
2

datastax java-driver 当前不支持 JDBC(尽管打开了一个拉取请求),但即使在驱动程序上使用 JDBC 也可能不是与 cassandra 交互的理想方式。

您应该仍然能够将 Cassandra 集成到您的游戏应用程序中,而不会遇到太多麻烦。以下是一些可能有用的参考资料:

于 2015-04-03T11:54:27.763 回答