gpt4 book ai didi

scala - 使用 Play 正确配置 ebean 数据源! 2个

转载 作者:行者123 更新时间:2023-12-01 09:11:27 25 4
gpt4 key购买 nike

首先,我在当前 application.conf 中设置的相关配置,实际上在 Java/Scala Ebean documentation from Play 中定义得差不多了。 :

db.default.driver=org.h2.Driver
db.default.url="jdbc:h2:mem:play"
db.default.user="sa"
db.default.password=""
ebean.default="models.*"

我正在运行 Play Framework 2.0.4

在研究了 Play 之后,我为我的示例应用编写了几个集成测试。找到this关于如何使用 Ebean 为我的模型生成 ddl 代码的好例子,我决定试一试,但我的 Ebean 配置似乎缺少一些东西。

我的代码几乎遵循上面的示例,但它是 Scala:

def setUp = {
val server = Ebean.getServer("default")
...
val ddl = new DdlGenerator(server.asInstaceOf[SpiEbeanServer], new H2Platform, config)
...
}

调用 Ebean.getServer("default") 抛出这个异常:无法创建 MyClassSpec 的实例,原因是 java.lang.RuntimeException: DataSource user is null?

嗯,也许我弄错了,但我相信 db.default.* 属性已经设置了 Ebean 需要的任何内容。

我在我的应用程序和 Ebean 中都引用了相同的数据源名称(“默认”),并且我的测试代码在 running(FakeApplication(additionalConfiguration = inMemoryDatabase("default"))) 代码块。

还有什么要配置的吗?谢谢!

最佳答案

好吧,我让它与 ebean.properties 文件一起工作,如 here 所述.

datasource.default=default

datasource.default.username=sa
datasource.default.password=
datasource.default.databaseUrl=jdbc:h2:mem:tests;DB_CLOSE_DELAY=-1
datasource.default.databaseDriver=org.h2.Driver
datasource.default.minConnections=1
datasource.default.maxConnections=25
datasource.default.heartbeatsql=select 1
datasource.default.isolationlevel=read_committed

所以我的数据库(ebean)相关配置设置在另一个文件中,实际上需要在 application.conf 和 ebeanEnabled 中定义 ebeans.default="models.*" := true 在 Build.scala 中

希望对大家也有帮助!

关于scala - 使用 Play 正确配置 ebean 数据源! 2个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13205680/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com