使用play-framework 2.5连接MySQL数据库

Pra*_*dey 2 java mysql scala intellij-idea playframework

我正在尝试将MySQL数据库与Play-framework-Java 2.5.4 连接起来.

我收到这个错误,

either dataSource or dataSourceClassName is required
Run Code Online (Sandbox Code Playgroud)

这些是我在App.conf文件中使用的连接代码,

db {
  db.default.driver=com.mysql.jdbc.Driver
  db.default.url="jdbc:mysql://localhost:3306/playdb"
  db.default.user="root"
  db.default.password="9413678957"
}
Run Code Online (Sandbox Code Playgroud)

但它连接时给我以下错误:

caused by: java.lang.IllegalArgumentException: either dataSource or dataSourceClassName is required
    at com.zaxxer.hikari.HikariConfig.validate(HikariConfig.java:785)
    at play.api.db.HikariCPConfig.toHikariConfig(HikariCPModule.scala:141)
    at play.api.db.HikariCPConnectionPool$$anonfun$1.apply(HikariCPModule.scala:57)
    at play.api.db.HikariCPConnectionPool$$anonfun$1.apply(HikariCPModule.scala:54)
    at scala.util.Try$.apply(Try.scala:192)
    at play.api.db.HikariCPConnectionPool.create(HikariCPModule.scala:54)
    at play.api.db.PooledDatabase.createDataSource(Databases.scala:199)
    at play.api.db.DefaultDatabase.dataSource$lzycompute(Databases.scala:123)
    at play.api.db.DefaultDatabase.dataSource(Databases.scala:121)
    at play.api.db.DefaultDatabase.getConnection(Databases.scala:142)
Run Code Online (Sandbox Code Playgroud)

当我连接到mysql数据库(与App.conf中相同)

  • url(jdbc:mysql:// localhost:3306/playdb)
  • 用户名
  • 密码

使用Intellij,它的工作正常.

请帮我告诉我我做错了什么.

Pra*_*dey 6

最后这对我有用: -

这个错误扼杀了我很多时间.

这对我有用,

取消注释这些线.

    play.db {
             config = "db"
             default = "default" 
    } 
Run Code Online (Sandbox Code Playgroud)

然后

    db {

  default.driver=com.mysql.jdbc.Driver
  default.url="jdbc:mysql://localhost:3306/playdb"
  default.username=root
  default.password="9403678957"
}
Run Code Online (Sandbox Code Playgroud)

不需要db.default.*,因为您已经在数据库集范围内.

非常感谢这个答案.