0

我需要做的是(在操作或服务中):

someAction() {
    // connect to database
    def otherDatasource = new Datasource(otherOptions)

    if (otherDatasource.isOnline()) {
        def list = ExclusiveDomainFromOtherDatasource.list()

        // do stuff with the data...

        otherDatasource.close()
    }
}

我没有使用数据源插件,因为其他数据库可能处于脱机状态并且应用程序在首次运行期间连接,或者我可能忘记了某些东西。

我知道我可以使用一些基本的 jdbc 库并制作一个原始 sql 来获取数据,但这不是很时髦,这是唯一的方法吗?还是有一个插件可以让我这样做?

4

1 回答 1

1

除非您使用某种自定义 DataSource,否则没有 isOnline() 方法,因此您不妨只使用 DataSources 插件。

实际上,较新版本的 grails 内置了多数据源支持,因此您不需要该插件。

我认为您只需要尝试从 DataSource 获取连接,并准备好捕获并处理数据库离线时您将获得的异常。

配置良好的数据库连接池应该允许您在数据库上线后开始成功连接。

于 2013-01-04T22:39:31.410 回答