覆盖Ebean命名约定

时间:2012-07-20 17:50:33

标签: playframework-2.0 ebean

在Play 2.0.2中我试图使用ebean作为ORM并从play-1.2.4迁移我现有的模型类。 我在模型类中的所有camelCase字段都被映射到数据库中的下划线列,这会产生问题,因为数据库中的列不使用下划线。

我一直在查看ebean API文档:http://www.avaje.org/static/javadoc/pub/com/avaje/ebean/config/UnderscoreNamingConvention.html

如果没有指定,那么下划线命名约定是默认值,这就是Play中EbeanPlugin中似乎发生的事情。 有没有办法可以覆盖这个默认设置(在Play中)?

我不想用@Column注释我所有的camelCase字段来解决这个问题。

TIA。

2 个答案:

答案 0 :(得分:4)

老问题,但是因为我刚才想出了答案,以为我会分享。

在conf目录中,创建一个名为“ebean.properties”的文件。在该文件中,输入......

ebean.namingconvention = com.avaje.ebean.config.MatchingNamingConvention

您可以在那里设置许多配置选项。

请看第1405行:http://grepcode.com/file/repo1.maven.org/maven2/org.avaje/ebean/2.7.2/com/avaje/ebean/config/ServerConfig.java

答案 1 :(得分:0)

我认为Ebean支持这一点,但我不确定这是否得到Play Framework的支持,看看他们的Google群组,并在明显得到答案时更新您的问题,因为它很有趣问题,我想: - )。

但是,也许在application.conf

中设置如下配置
ebean.namingConvention.sequenceFormat={table}{column}seq
相关问题