Grails 如何在运行时从其他数据库获取数据

Grails 如何在运行时从其他数据库获取数据,grails,runtime,datasource,Grails,Runtime,Datasource,我需要一种在运行时更改数据库的最佳方式,无论是从hibernate还是从JNDI还是其他方式。当用户单击特定按钮时,我需要更改数据库(更改对事件的依赖关系)。如果您运行的是Grails 1.3.x,则可以在Grails 2.x中使用 然后可以使用参数传递数据库连接名称 def database = params.database if(!database) database = "default" 并用它来称呼它 def zipCode = ZipCode.'${database}'.get(

我需要一种在运行时更改数据库的最佳方式,无论是从hibernate还是从JNDI还是其他方式。当用户单击特定按钮时,我需要更改数据库(更改对事件的依赖关系)。

如果您运行的是Grails 1.3.x,则可以在Grails 2.x中使用

然后可以使用参数传递数据库连接名称

def database = params.database
if(!database) database = "default"
并用它来称呼它

def zipCode = ZipCode.'${database}'.get(42)
…
zipCode.'${database}'.save()

谢谢您的回答,但这是我的数据源名称datasource(名称:'database2'){…}我可以像(!database)database=“database2”一样调用此数据源吗