如何为play项目配置多个datasource/ebean

zgc*_*ley 4 playframework

我的游戏项目是用play framework 2.4创建的.我想为它配置两个数据流,一个用于测试目的,一个用于生产.

测试数据源

db.test.driver=org.h2.Driver<br>
db.test.url="jdbc:h2:mem:test;MODE=MYSQL;MVCC=false;DB_CLOSE_DELAY=-1"
Run Code Online (Sandbox Code Playgroud)

生产数据源

  db.mysql.driver=com.mysql.jdbc.Driver
  db.mysql.url="jdbc:mysql://127.0.0.1:3306/db"
  db.mysql.user=root
  db.mysql.password=root
Run Code Online (Sandbox Code Playgroud)

我还为这两个数据源配置了Ebean服务器,并将默认的Ebean数据源设置为'test'.

   ebean.test=["xx.*"]
   ebean.mysql=["xx.*"]
   ebeanconfig.datasource.default=test
Run Code Online (Sandbox Code Playgroud)

但是当我运行我的单元测试(激活器测试)时,出现错误:

[PersistenceException:默认的EbeanServer尚未定义?这通常通过ebean.datasource.default属性设置.否则它应该通过registerServer()以编程方式注册

我还尝试使用属性ebean.datasource.default = test来设置默认的Ebean数据源,但仍然失败.

我的任何配置错误?我真的很挣扎......

小智 5

将属性更改ebean.datasource.defaultplay.ebean.defaultDatasource,以设置/覆盖默认的ebean数据源.我在java文档部分做了一个pull请求;)