Igo*_*gor 16 dns grails grails-orm
说我有类似的东西:
class Foo {
static mapping = {
table 'foo_table'
}
}
Run Code Online (Sandbox Code Playgroud)
foo_table如果我有对此对象的实例的引用,我怎么能得到名称?
jam*_*man 24
导入org.codehaus.groovy.grails.orm.hibernate.cfg.GrailsDomainBinder.
要从域类获取表名:
def tableName = GrailsDomainBinder.getMapping(Foo).table.name
Run Code Online (Sandbox Code Playgroud)
并从域类的实例获取表名:
def tableName = GrailsDomainBinder.getMapping(foo.class).table.name
Run Code Online (Sandbox Code Playgroud)
Ale*_*rov 13
JamesA的答案将起作用,但只有表格名称明确定义,如问题中所示.
如果您希望获取表名,无论是否在映射中指定了表名,可以使用SessionFactory以下命令完成:
def tableName = sessionFactory.getClassMetadata(Foo).tableName
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4920 次 |
| 最近记录: |