【问题标题】:Does mybatis support stored procedures that return more than 1 result sets?mybatis 是否支持返回超过 1 个结果集的存储过程?
【发布时间】:2012-06-29 04:22:02
【问题描述】:

我正在将一个项目从 C# + SQL Server 移植到 Java + MySQL。我在Java + MySQL项目中使用了ibatis 3。

在旧项目中,它使用了大量的存储过程,这些存储过程返回的结果集不止1个。

我尝试使用 ibatis 寻找解决方案,并找到了这个MyBatis multiple resultsets

James Woods 似乎使用逗号分隔的 resultMap 列表实现了它。

我尝试了他的方法并在Java中调用该方法:

1: 对象[] findCashItems(); 2:列表[] findCashItems();

然而,他们都失败了。

我只是想知道ibatis 3真的支持返回超过1个结果集的存储过程吗?

如果是这样,我们如何在 Java 中调用该方法?

非常感谢。

【问题讨论】:

  • 我不知道你正在使用这个工具,但是从 SQL 的角度来看,我建议你将存储过程返回的结果打包到一个临时表中并返回 select *从临时表。这将为您提供所需的一切,而无需担心工具的功能。
  • 感谢 slashmais 的回答。但是在现在移植的旧项目中,存储过程可能会返回多个结果集,每个结果集都有不同的列。所以很难将它们打包到临时表中。

标签: ibatis multiple-resultsets


【解决方案1】:

上次我检查过,您需要一个返回类型,例如 ListList<List<?>>

【讨论】:

    猜你喜欢
    • 2011-04-22
    • 2016-11-30
    • 2023-04-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-27
    • 2019-06-20
    相关资源
    最近更新 更多