1

我想遍历当前环境的所有可用数据源,尝试查看其中是否包含特定域实例。每个环境都有不同的数据源。

到目前为止,我破解的最好的是grailsApplication.config.findAll { it.key.contains('dataSource_') }. 有没有更好或更合法的方法来做到这一点?

4

1 回答 1

2

您还可以在应用程序上下文中查询 bean 名称。

就像是

ctx.beanDefinitionNames.findAll{ it.contains('dataSource') }

至少这是 Datasources 插件中的 DatasourcesUtils 所做的 -

http://plugins.grails.org/grails-datasources/trunk/src/groovy/com/burtbeckwith/grails/plugin/datasources/DatasourcesUtils.groovy

于 2012-03-14T19:56:36.720 回答