gpt4 book ai didi

java - 如何使用此 Groovy 代码从 Groovy 类获取数据源连接?

转载 作者:行者123 更新时间:2023-12-01 23:01:53 26 4
gpt4 key购买 nike

我的 Grails 应用程序中曾经有一个 Java 类,但我需要从 DataSource.groovy 获取连接,因此我将其传递给 Groovy 类,并使其获取 Context Application 。但是我如何使用此代码连接到该数据源?:

def dataSource = ctx.getBean('dataSource_Executer') // auto injected and referenced to a datasource
Connection conn = null;
Statement stmt = null;
Class.forName('driver');
conn = DriverManager.getConnection(dataSource);// Here it's the trouble

我需要这样,因为我需要这样的结果查询的元数据:

 stmt = conn.createStatement();
def rs = stmt.executeQuery('query');
def rsmd = rs.getMetaData();
num = rsmd.getColumnCount();

并用 While 来控制它:

 while(rs.next()){..........}

最佳答案

我将使用 groovy.sql 包来执行此操作。

import groovy.sql.GroovyRowResult
import groovy.sql.Sql

def dataSource = ctx.getBean('dataSource_Executer')
def connection = new Sql(dataSource)
def results = connection.rows('SELECT ...')
results.each { r ->
println r['columnName']
...
}

您还可以访问ResultSetMetaData。这个blog post有一个很好的示例说明如何执行此操作。

关于java - 如何使用此 Groovy 代码从 Groovy 类获取数据源连接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23299375/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com