在我的grails 2应用程序中,我在Datasources.groovy中配置了多个数据源。我的域类映射指定应该使用所有数据源
class Book {
static mapping = { datasource 'ALL' }
对于基本的Gorm调用,我可以指定要使用的数据源。
Book.lookup.save()
正确使用'查找'数据源
有没有办法指定标准应该使用哪个数据源?
我已经尝试了以下4种解决方案而没有任何运气
def c = Book.lookup.createCriteria(); c.list{...
对.list的调用抛出:java.sql.SQLException:连接已关闭
def c = Book.createCriteria(); c.lookup.list{...
没有这样的方法
注入数据源
def dataSource_lookup
...
Book.createCriteria(dataSource_lookup)
没有这样的方法
指定标准所在的整个服务应该使用特定的数据源似乎不适用于条件,也不适用于基本的save()调用。我正在运行grails 2.1.0。
static datasource = 'lookup'
答案 0 :(得分:1)
不是一个很好的解决方案,但如果您事先访问数据源(可能在同一个休眠会话中),它确实有效。
Book.lookup.read(1)
def c = Book.lookup.createCriteria()
c.list{...