我正在使用 Grails 构建一个多租户应用程序,并且我想保留单独的数据库。
我需要在运行时动态更改 url 以将 GORM 指向不同的数据库。
我有一个前端充当平衡器,将请求分发到后端主机集群。每个后端主机运行一个 Grails 2.3.5 实例和一个带有多个数据库(每个租户一个)的 mysql 服务器。我想动态更改数据源,以便 GORM 可以访问正确数据库上的域实体。
有任何想法吗 ?
Thanks
您可以在 DataSource.groovy 中配置多个数据源,看看blog.
在您的域中:添加您的域可以交互的数据源,例如,
static mapping = {
datasources(['dataSource1', 'dataSource2'])
}
或“ALL”表示所有数据源,例如,
static mapping = {
datasource 'ALL'
}
然后您可以使用要获取/设置数据的数据源名称进行查询,例如,
def userClass = User.class
User user = userClass.dataSource1.findByName('username')
Ref:- 多个数据源, 在grails中查询多个数据源
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)