我的应用程序中有多个数据源,我希望能够将服务类上的数据源从默认数据源切换到另一个数据源(以便它与我的Grails域匹配)。按照其声明使用的文件:
static datasource = 'dsName'
我已经完成了服务类的属性。但是,mainTransactionManager仍在使用我的默认数据源。
我可以在ChainedTransactionManager中看到它调用:
MultiTransactionStatus mts = new MultiTransactionStatus(transactionManagers.get(0));
transactionManagers中的第0个索引包含我的默认数据源...那么我如何确保它不使用包含默认数据源的事务管理器?
Grails在何时/何时阅读
static datasource = '...'
属性?
基本上我只是希望在我的服务和域名中整理数据源。
答案 0 :(得分:1)
处阅读Grails在何时/何时阅读
static datasource = '...'
这是在https://github.com/grails/grails-core/blob/bd7cc10e17d34f20cedce979724f0e3bacd4cdb4/grails-core/src/main/groovy/org/codehaus/groovy/grails/commons/DefaultGrailsServiceClass.java#L40调用getDatasource
方法。