我们有多个使用不同数据库的应用程序。
因此我们决定只为所有数据使用一个数据库,因为应用程序中的某些数据属于一起。
该数据库将有大约100个表,我们希望使用表的前缀,我们可以看到该表所属的位置。
我可以使用<TextView
android:id="@+id/preview_pane"
android:layout_width="match_parent"
android:layout_height="80sp"
android:layout_gravity="center_horizontal"
android:textSize="70sp"
android:textColor="#DDDDDD"
android:layout_marginTop="10sp"
android:includeFontPadding="false"
android:singleLine="true"
android:scrollHorizontally="true"
android:ellipsize="marquee"
android:marqueeRepeatLimit="marquee_forever"
/>
在Mappings中更改它,但也许有一种更简单的方法。
我想也许有办法在DataSource中设置表Prefix?
修改
这是我的DataSource配置:
table: 'prefix_table'
答案 0 :(得分:0)
查看“CustomNamingStrategy”下的文档: http://grails.github.io/grails-doc/latest/guide/GORM.html#customNamingStrategy
添加到项目的DataSource.groovy:
hibernate {
…
naming_strategy = 'com.myco.myproj.CustomNamingStrategy'
}
将此添加到您的项目src
package com.myco.myproj
import org.hibernate.cfg.ImprovedNamingStrategy
import org.hibernate.util.StringHelper
class CustomNamingStrategy extends ImprovedNamingStrategy {
String classToTableName(String className) {
"prefix_" + StringHelper.unqualify(className)
}
}