gpt4 book ai didi

java - 如何将 Java 结果集转换为 Railo 中的 ColdFusion 查询?

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:52:26 25 4
gpt4 key购买 nike

以下在 CFMX 7 和 CF8 中运行良好,我假设 CF9 也是如此:

<!--- 'conn' is a JDBC connection --->
<cfset stat = conn.createStatement() />
<cfset rs = stat.executeQuery(trim(arguments.sql)) />

<!--- convert this Java resultset to a CF query recordset --->
<cfset queryTable = CreateObject("java", "coldfusion.sql.QueryTable")>
<cfset queryTable.init(rs) >
<cfset query = queryTable.FirstTable() />

这使用 JDBC 驱动程序创建一个语句,对其执行查询,将其放入 java 结果集中,然后实例化 coldfusion.sql.QueryTable,传递 Java resulset 对象,然后调用 queryTable.FirstTable() ,它返回一个实际的 coldfusion 结果集(用于 cfloop 等)。

问题来自于 Railo 的实现差异。在 Railo 中运行此代码会返回以下错误:找不到 coldfusion.sql.QueryTable(org.sqlite.RS) 的匹配构造函数。

我已经转储了 Railo java 对象,并且在方法中没有看到 init()。我错过了一些简单的东西吗?我也很想在 Railo 中使用它。

请注意:我正在对 SQLite 数据库进行无 DSN 连接。我了解如何设置 CF 数据源。此时我唯一的问题是将 Java 结果集转换为 Railo 查询。

最佳答案

查看 Railo 源代码,我发现 railo.runtime.type.QueryImpl 可能符合您的需求。它实现了 railo.runtime.type.Query 并在其构造函数中接受了一个 ResultSet,但它似乎没有实现 QueryTable

如果这是正确的类,您需要传入一个 ResultSet 和一个查询名称字符串,因为它没有只接受 ResultSet 的构造函数。

关于java - 如何将 Java 结果集转换为 Railo 中的 ColdFusion 查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2227134/

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