m14*_*416 3 playframework ebean playframework-2.0
到目前为止我们一直在使用Play 2.3.9,我们现在正在迁移到Play 2.4.1当我使用旧版本的Play保存实体时,但是使用新版本时,不会生成Id.我从头开始设置一个新项目并试图实现它的工作原理,自动生成的数据库有一个自动递增的Id字段,而旧项目有一个使用序列的数据库.我一直在尝试配置play/ebean来使用序列,但到目前为止还没有成功.
我在这里看了一下http://www.avaje.org/topic-97.html然后尝试了一下,但它仍然没有用.任何建议,将不胜感激.
我的配置如下所示:
ebean.default.identityGeneration=sequence
ebean.default.supportsGetGeneratedKeys=false
ebean.default.supportsSequences=true
ebean.default.debug.sql=true
Run Code Online (Sandbox Code Playgroud)
我也尝试过
ebean.default.identityGeneration=generator
Run Code Online (Sandbox Code Playgroud)
我把这些行直接放在application.conf中我也用ServerConfigStartup方式配置了ebean,但没有运气.
无论如何,我让它工作,如果有人有同样的问题,以下修复它:
public class MyServerConfigStartup implements ServerConfigStartup {
@Override
public void onStart(ServerConfig serverConfig) {
PostgresPlatform postgresPlatform = new PostgresPlatform();
DbIdentity dbIdentity = postgresPlatform.getDbIdentity();
dbIdentity.setSupportsGetGeneratedKeys(false);
dbIdentity.setSupportsSequence(true);
dbIdentity.setIdType(IdType.GENERATOR);
serverConfig.setDatabasePlatform(postgresPlatform);
}
Run Code Online (Sandbox Code Playgroud)
}
| 归档时间: |
|
| 查看次数: |
1233 次 |
| 最近记录: |