当前位置: 首页 > 知识库问答 >
问题:

使用Play 2和Slick-Play配置Postgresql连接

诸葛乐逸
2023-03-14

我正在学习如何使用Scala和Play 2 Framemork构建应用程序。我使用activator工具创建了一个新项目,它基于当前的“play scala intro”模板。

该模板有一个使用Play-Slick 1.0管理依赖项的示例应用程序,并配置了一个H2 DB,可以正常工作。

当我尝试更改为Postgres DB时,我遇到了麻烦。我得到一个错误500,告诉我:

“无法连接到数据库[默认设置]”。

在堆栈跟踪中,异常为:

"配置的Slick驱动程序org.postgresql.驱动程序不是请求配置文件的实例slick.profile.BasicProfile"

所以…我已经做了:

添加到我的构建中。sbt文件依赖项:

“org.postgresql”%”“postgresql”%”“9.4-1201-jdbc41”

在我的配置文件(application.conf)中,DB连接配置为:

driver=org.postgresql。Driver slick.dbs.default.db.url=“jdbc:postgresql://localhost:5432/hello_play“slick.dbs.default.db.user=”postgres“slick.dbs.default.db.password=”

PS:我也试过使用slick.dbs.default.driver=“org.postgresql.driver”。。。

我的数据库密码是空的。我正在与PgAdmin联系,没有问题

共有1个答案

蔡鸿骞
2023-03-14

slick.dbs.default。驱动程序必须是熟练的驱动程序,而不是JDBC驱动程序。您的数据库配置应该如下所示:

slick.dbs.default.driver="slick.driver.PostgresDriver$"
slick.dbs.default.db.driver="org.postgresql.Driver"
slick.dbs.default.db.url="jdbc:postgresql://localhost:5432/hello_play"
slick.dbs.default.db.user="postgres"
slick.dbs.default.db.password=""

 类似资料:
  • 我在应用程序中使用以下类型安全配置。用于Slick 3.0的配置。HikariCP是Slick 3.0的默认连接池。我将池名设置为“primaryPool”: 从HikariCP日志中,我看到了清理前池统计数据db(总计=21,使用次数=0,可用次数=21,等待次数=0) 使用默认连接池名称“db”,但不是我所期望的primaryPool。我怀疑配置格式不正确。 所以我的问题是如何在应用程序中配置

  • 为了避免在postgres中手动创建表,我正在尝试对播放剪影种子示例进行一些改进。我试图遵循中使用的实现 https://github.com/playframework/play-slick/tree/master/samples/computer-database ,但在添加绑定(classOf[InitialData])时,我在注入方面遇到了一些问题。将asEagerSingleton()转

  • 我有一个scala.html页面,它在Play 2.2.1、Scala 2.10.2、Slick 1.0.1、Postgres 9.3应用程序中调用AJAX。 以下同步代码工作正常。它解析请求查询字符串并调用方法 ,该方法对表进行 scala 光滑调用,并根据 对象过滤结果并返回 如果我将方法改为异步运行(见下文),并多次调用listSchools,那么大约20秒后就会抛出这个异常。我怀疑这可能是

  • 我是 Kafka 的新手,我写了一段写入主题的代码(制作人)。 现在,我被赋予了一项任务,即观察内容是否与主题相关。 我的技术主管提供的唯一信息是我应该安装kafka连接,并使用此XML: 我完全不知道在哪里或如何导入这个xml配置文件。我安装了kafka,将其放到本地运行,但所有配置文件通常采用以下格式: 部分输出: 我尝试在这里添加字段,但缺少许多字段,任何提示都将非常受欢迎,我做了一些研究,

  • Tmux 名字取自“Terminal Multiplexer”,读作“T-马克思”,是一个能够终端窗口中提供多终端会话 管理的应用,它可以在后台保持多个终端会话的运行,并在合适的时候 attach 或者 detach 会话, 以达到保持和切换会话的作用。 Tmux 的竞争对手有 GNU Screen,我没有过 Screen 的使用经验,但是根据搜索的结果 BSD 协议的 Tmux 似乎要更加自由和

  • 我设置了一个光滑的数据库对象从类型安全配置像这样: 配置对象告诉Slick使用HikariCP,如下所示: 在实例化DatabaseService之后,我可以通过运行。 第一个问题是,我需要做些什么来从池中获取连接,还是在调用? 其次,执行一个或多个查询后,如何将当前数据库连接返回到连接池?